Vue ドキュメントの計算プロパティ関数の詳細な説明
Vue.js は、開発を容易にする多くの機能とコンポーネントを提供する人気のあるフロントエンド フレームワークです。非常に重要な機能の 1 つは、計算されたプロパティ関数です。計算された属性は、データに基づいて新しい属性値を動的に計算できるため、テンプレート内の複雑な式を直接計算する必要がなくなります。この記事では、Vue ドキュメントで計算されるプロパティ関数を詳しく紹介します。
1. 計算プロパティの定義と使用法
計算プロパティは Vue の特別なプロパティであり、その値は関数です。 Vue インスタンス オブジェクトで計算プロパティを定義する例:
var vm = new Vue({ data: { message: 'Hello World' }, computed: { reversedMessage: function () { return this.message.split('').reverse().join('') } } })
上記のコードでは、計算プロパティ reversedMessage
が Vue インスタンス オブジェクトで定義されており、その値は次の関数です。 returns は反転されたメッセージです。
計算されたプロパティは、データ プロパティと同様にテンプレートで使用できます。例:
<div id="app"> <p>Original message: {{ message }}</p> <p>Reversed message: {{ reversedMessage }}</p> </div>
レンダリング時、「元のメッセージ:」と「反転メッセージ:」にはそれぞれ「Hello World」が表示されます。 「dlrow olleH」。
2. 計算された属性のキャッシュ
計算された属性には、同じ入力に対して同じ出力を返すという非常に重要な機能があるため、キャッシュされます。たとえば、上記の例では、reversedMessage
を複数回使用すると、message
が変更されない限り、同じ文字列が返されます。
この機能は、テンプレート内で複雑な式を繰り返し計算する必要がないため、テンプレート内で計算されたプロパティを使用する場合に非常に便利です。
3. 計算プロパティのゲッターとセッター
計算プロパティではゲッター関数が必要で、計算プロパティの出力値を定義します。場合によっては、計算されたプロパティの入力値を定義するセッター関数の追加が必要になることがあります。
たとえば、計算プロパティ fullName
を定義できます。このプロパティのゲッターは firstName
と lastName
を連結した文字列を返し、セッターは次のことを行うことができます。 fullName
の内容を firstName
と lastName
に分割します。
var vm = new Vue({ data: { firstName: 'John', lastName: 'Doe' }, computed: { fullName: { // Getter get: function () { return this.firstName + ' ' + this.lastName }, // Setter set: function (newValue) { var names = newValue.split(' ') this.firstName = names[0] this.lastName = names[names.length - 1] } } } })
上記のコードでは、fullName
のゲッターを使用して現在のフルネームを取得するか、セッターを使用して新しいフルネームを設定できます。例:
console.log(vm.fullName) // John Doe vm.fullName = 'Jane Smith' console.log(vm.firstName) // Jane console.log(vm.lastName) // Smith
4. 計算属性のリアルタイム計算
計算属性は、データ属性のリアルタイム計算に最適な方法です。 Vue はデータ属性を変更すると、次回テンプレートをレンダリングする必要があるときに、新しい計算属性の値を計算します。計算されたプロパティが依存するデータが変更されていない場合、計算されたプロパティは以前にキャッシュされた値を使用します。
var vm = new Vue({ data: { radius: 5 }, computed: { diameter: function () { return this.radius * 2 }, circumference: function () { return 2 * Math.PI * this.radius } } })
上記のコードでは、計算されたプロパティ diameter
と circumference
を定義します。これらは両方とも radius
プロパティに依存します。これらの計算されたプロパティは、radius
プロパティが変更されると再計算されます。例:
console.log(vm.diameter) // 10 vm.radius = 10 console.log(vm.circumference) // 62.83185307179586
5. 計算されたプロパティとメソッドの違い
Vue にはメソッドと呼ばれる非常によく似た概念があり、このメソッドはテンプレートで使用できます v-on
呼び出すディレクティブ。メソッドと計算されたプロパティはどちらも、データ プロパティの変更に基づいて値を変更できます。
それでは、メソッドと計算プロパティの違いは何でしょうか?
まず第一に、計算プロパティとは異なり、メソッドは常に再計算され、その結果は計算プロパティのようにキャッシュできません。通常、メソッドは、毎回再計算する必要がある複雑なロジックや、特定のパラメーターを渡す必要があるロジックに適しています。
第 2 に、計算プロパティにはゲッターのみがあり、メソッドにはセッターのみがあります。メソッドは値を返すことができますが、戻り値はキャッシュされません。
最後に、計算プロパティはデータ プロパティと同じように簡単にテンプレートで使用できますが、メソッドは v-on
ディレクティブを使用して呼び出す必要があります。計算されたプロパティの値をテンプレートに表示する場合は、計算されたプロパティを使用することをお勧めします。
6. 概要
Vue では、計算されたプロパティは、データ プロパティをリアルタイムで計算する最良の方法です。キャッシュ特性があり、計算の繰り返しを回避し、複雑なビジネス ロジックを実装でき、コードの可読性と保守性が向上します。同時に計算プロパティではゲッター関数やセッター関数も提供できるため、計算プロパティを自由に操作できるようになります。計算されるプロパティとは異なり、メソッドは常に再計算されるため、毎回再計算する必要があるロジックやパラメーターを渡す必要があるロジックに適しています。頻繁に計算を必要とするロジックの場合は、計算されたプロパティを使用することをお勧めします。
以上がVue ドキュメントの計算プロパティ関数の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









vue.jsでJSファイルを参照するには3つの方法があります。タグ;; mounted()ライフサイクルフックを使用した動的インポート。 Vuex State Management Libraryを介してインポートします。

Vue.jsの監視オプションにより、開発者は特定のデータの変更をリッスンできます。データが変更されたら、Watchはコールバック関数をトリガーして更新ビューまたはその他のタスクを実行します。その構成オプションには、すぐにコールバックを実行するかどうかを指定する即時と、オブジェクトまたは配列の変更を再帰的に聴くかどうかを指定するDEEPが含まれます。

vue.jsでBootstrapを使用すると、5つのステップに分かれています。ブートストラップをインストールします。 main.jsにブートストラップをインポートしますブートストラップコンポーネントをテンプレートで直接使用します。オプション:カスタムスタイル。オプション:プラグインを使用します。

Vue.jsでは、Lazy Loadingを使用すると、コンポーネントまたはリソースを必要に応じて動的にロードすることができ、初期ページの読み込み時間を短縮し、パフォーマンスを改善できます。特定の実装方法には、&lt; Keep-Alive&gt;および&lt;コンポーネントは&gt;コンポーネント。怠zyなロードは、FOUC(スプラッシュ画面)の問題を引き起こす可能性があり、不必要なパフォーマンスのオーバーヘッドを避けるために怠zyなロードが必要なコンポーネントにのみ使用する必要があることに注意してください。

HTMLテンプレートのボタンをメソッドにバインドすることにより、VUEボタンに関数を追加できます。 VUEインスタンスでメソッドを定義し、関数ロジックを書き込みます。

CSSアニメーションまたはサードパーティライブラリを使用して、VUEでマーキー/テキストスクロール効果を実装します。この記事では、CSSアニメーションの使用方法を紹介します。スクロールテキストを作成し、テキストを&lt; div&gt;をラップします。 CSSアニメーションを定義し、オーバーフローを設定します:非表示、幅、アニメーション。キーフレームを定義し、アニメーションの開始と終了時にtranslatex()を設定します。期間、スクロール速度、方向などのアニメーションプロパティを調整します。

Vue Devtoolsを使用してブラウザのコンソールでVueタブを表示することにより、Vueバージョンを照会できます。 NPMを使用して、「NPM List -G Vue」コマンドを実行します。 package.jsonファイルの「依存関係」オブジェクトでVueアイテムを見つけます。 Vue CLIプロジェクトの場合、「Vue -Version」コマンドを実行します。 &lt; script&gt;でバージョン情報を確認してくださいVueファイルを参照するHTMLファイルにタグを付けます。

vue.jsには、前のページに戻る4つの方法があります。$ router.go(-1)$ router.back()outes&lt; router-link to =&quot;/&quot; Component Window.history.back()、およびメソッド選択はシーンに依存します。
