vue-chartjs+TypeScriptでClass ” incorrectly extends base class ‘Bar & ReactivePropMixin & …

今回はvue-chartjs+TypeScriptを使用しているときに、「class ” Class ” incorrectly extends base class ‘Bar & ReactivePropMixin & Vue & object & Record‘.
Type ” is not assignable to type ‘ReactivePropMixin’.
Property ‘chartData’ is private in type ” but not in type ‘ReactivePropMixin’.」というエラーが出たときの対処法についてご紹介いたします。



vue-chartjs+TypeScriptでClass ” incorrectly extends base class ‘Bar & ReactivePropMixin & …

vue-chartjsとTypeScript環境で開発を行っているときのことです。
上記のエラーが出てしまいました。

このときのソースコードは下記のようなコードでした。

上記のコードのとき、VS Code上でclassを定義するtestChartのところにマウスカーソルを乗せると上記のエラーが出ます。

結論から言うと、上記ソースコードだとchartDataがprivateになっていますが、publicにすることで上記エラーが消えます。
こんな感じですね。

おそらくですが、vue-chartjsのGitHubのソースコードを見てみると、watchでchartDataを見ているので、privateのままだとvue-chartjsからchartDataを見れないのでエラーが出るわけですね。
https://github.com/apertureless/vue-chartjs/blob/develop/src/mixins/index.js#L95-L97

終わりに

今回はvue-chartjs+TypeScriptを使用しているときに、「class ” Class ” incorrectly extends base class ‘Bar & ReactivePropMixin & Vue & object & Record‘.
Type ” is not assignable to type ‘ReactivePropMixin’.
Property ‘chartData’ is private in type ” but not in type ‘ReactivePropMixin’.」というエラーが出たときの対処法についてご紹介いたしました。

【お知らせ】
プログラミングのコンサルタントをすることを考えております。
下記の通り、かなり格安でご用意させていただいております。
【格安】プログラミングコンサル生募集(初心者向け、フリーランス志望向け)

詳しくは下記のリンクをご覧ください。
https://chico-shikaku.com/2020/10/programming-consult-2020/

11月くらいを目処に開始予定です。
最初は募集があれば先着5名くらいを目安に考えております。
質問や意見、問い合わせやお申し込みは下記のリンクよりお願いいたします。
https://docs.google.com/forms/d/e/1FAIpQLSeTXskmlyPAHuhwiOE9togqJPWdhXYCyRoVnFkkbS0VN0Ftug/viewform?usp=sf_link

最後までお読みいただきありがとうございます。
ブログやTwitterでのシェアOKです。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。






Vue.js

Posted by ちこ