ホームページ >ウェブフロントエンド >jsチュートリアル >Vue の計算プロパティで矢印関数が期待どおりに動作しないのはなぜですか?

Vue の計算プロパティで矢印関数が期待どおりに動作しないのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-24 20:47:31903ブラウズ

Why Don't Arrow Functions Work as Expected in Vue Computed Properties?

Vue 計算プロパティのアロー関数

問題:

Vue 計算プロパティでのアロー関数の使用プロパティが予期しない動作を引き起こす可能性があります。計算プロパティのメソッドをアロー関数に変更した後、基になるデータ値が正常に切り替わったとしても、DOM 要素の色は変わりません。

答え:

この問題は、アロー関数がこれを、計算されたプロパティが定義されている Vue インスタンスにバインドしないために発生します。この動作は、インスタンス メソッドなど、アロー関数が使用される他のコンテキストと一致しています。

Vue ドキュメントによると、

「インスタンス プロパティまたはコールバックではアロー関数を使用しないでください」 (例: vm.$watch('a', newVal => this.myMethod())) アロー関数は親コンテキストにバインドされているため、これは Vue インスタンスではありません。

解決策:

この問題を解決するには、計算プロパティまたはインスタンス メソッドでアロー関数を使用しないようにします。 。代わりに、従来の関数構文 (例: function() { ... }) を使用して、これを Vue インスタンスに正しくバインドします。

以上がVue の計算プロパティで矢印関数が期待どおりに動作しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。