Vue の計算プロパティとリスナーの使用の概要

Vue の計算プロパティとリスナーの使用の概要

1. 計算プロパティとリスナー

1.1 計算プロパティ

<!DOCTYPE html>
<html>
  <ヘッド>
    <メタ文字セット="utf-8">   
    <script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
  </head>
  <本文>
    <div id="アプリ">
			<p>{{ メッセージ }}</p>
			<p>{{ 逆メッセージ }}</p>
    </div>
    <スクリプト>
      新しいVue({
        el: '#app',
        データ: {
					メッセージ: 'こんにちは'
        },
				計算: {					
					逆メッセージ: 関数 () {
						this.message.split('').reverse().join('') を返します
					}
					/*
					// 逆メッセージと同等: {
						得る(){
							this.message.split('').reverse().join('') を返します
						}
					}
					*/
				}
      });
    </スクリプト>
  </本文>
</html> 

説明: 計算プロパティで計算プロパティreversedMessageを定義しました。ここで提供される関数は、計算プロパティreversedMessageのゲッター関数として使用されます。

1.2 セッター

計算プロパティにはデフォルトではゲッターしかありませんが、セッターを提供することもできます。

<!DOCTYPE html>
<html>
  <ヘッド>
    <メタ文字セット="utf-8">   
    <script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
  </head>
  <本文>
    <div id="アプリ">
			<p>{{ メッセージ }}</p>
			<p>{{ 逆メッセージ }}</p>
			<input type="text" v-model="reversedMessage" />
    </div>
    <スクリプト>
      新しいVue({
        el: '#app',
        データ: {
					メッセージ: 'こんにちは'
        },
				計算: {
					逆メッセージ: {
						得る(){
							this.message.split('').reverse().join('') を返します
						},
						設定(値){
							this.message = value.split('').reverse().join('')
						}
					}
				}
      });
    </スクリプト>
  </本文>
</html>

1.3 キャッシュ

<!DOCTYPE html>
<html>
  <ヘッド>
    <メタ文字セット="utf-8">   
    <script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
  </head>
  <本文>
    <div id="アプリ">
			<p>{{ メッセージ }}</p>
			<p>{{ 逆メッセージ }}</p>
			<p>{{ 逆メッセージ1() }}</p>
    </div>
    <スクリプト>
      新しいVue({
        el: '#app',
        データ: {
					メッセージ: 'こんにちは'
        },
				メソッド: {
					逆メッセージ1: 関数(){
						this.message.split('').reverse().join('') を返します
					}
				},
				計算: {					
					逆メッセージ: 関数 () {
						this.message.split('').reverse().join('') を返します
					}
				}
      });
    </スクリプト>
  </本文>
</html> 

注: 計算プロパティとメソッドの両方で同じ効果が得られますが、計算プロパティはリアクティブ依存関係に基づいてキャッシュされます。関連するリアクティブ依存関係が変更された場合にのみ再評価されます。

1.4 リスニング特性

Vue インスタンスの watch プロパティを通じてデータの変更を監視できます。

<!DOCTYPE html>
<html>
  <ヘッド>
    <メタ文字セット="utf-8">   
    <script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
  </head>
  <本文>
    <div id="アプリ">
			<p>{{ メッセージ }}</p>
			<button @click="reverse=!reverse">反転</button>
    </div>
    <スクリプト>
      新しいVue({
        el: '#app',
        データ: {
					メッセージ: 'Vue'、
					逆: 偽
        },
				時計:
					// メッセージ: function(newVal, oldVal){
					逆: 関数(newVal){
						コンソールログ(新しい値)
						this.message = this.message.split('').reverse().join('')
					}
				},
      });
    </スクリプト>
  </本文>
</html>

インスタンス属性 vm.$watch を通じて同じ効果を実現できます。

<!DOCTYPE html>
<html>
  <ヘッド>
    <メタ文字セット="utf-8">   
    <script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
  </head>
  <本文>
    <div id="アプリ">
			<p>{{ メッセージ }}</p>
			<button @click="reverse=!reverse">反転</button>
    </div>
    <スクリプト>
      var vm = 新しい Vue({
        el: '#app',
        データ: {
					メッセージ: 'Vue'、
					逆: 偽
        }
      });
			
			// vm.$watch('reverse', 関数(newVal, oldVal) {
			vm.$watch('reverse', 関数(newVal) {
				コンソールログ(新しい値)
				this.message = this.message.split('').reverse().join('')
			});
    </スクリプト>
  </本文>
</html>

上記は、Vue の計算プロパティとリスナーの使用の概要の詳細内容です。Vue の計算プロパティとリスナーの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • vue3.0 のウォッチ リスナーの例の詳細な説明
  • Vue2 と Vue3 でウォッチ リスナーを使用する方法
  • Vue のリスナーの基本的な使用例
  • vueリスナーウォッチでこれを呼び出すときに未定義の問題を解決する
  • Vue 学習ノート: 計算プロパティとリスナーの使用
  • Vue 2.0 リスナーウォッチ属性コードの詳細な説明
  • Vue の基本リスナーの詳細な説明

<<:  UI を通じて Docker を管理する方法

>>:  MySQLはconnect_by_isleaf MySQLメソッドまたはストアドプロシージャに似た機能を実装します

推薦する

Reactの基本のまとめ

目次序文始めるReactライフサイクルリアクトファイバーリアクトセットステートReactイベントメカ...

Docker環境を構築する簡単な方法

まず、Docker とは何かを理解しましょう。 Docker は、アプリケーションをデプロイするため...

nginxディレクトリパスをリダイレクトする方法

ドメイン名に続くパスがデフォルトの Web ディレクトリではなく、ローカル ディスク上の他のディレク...

MySQL がデフォルト値を持つ NULL 列の使用を推奨しない理由

よく聞かれる答えは、列に NULL 値を使用するとインデックスが無効になるというものですが、実際にテ...

Vue3のdefineComponentの役割についての簡単な説明

目次defineComponent オーバーロード関数開発実務defineComponent 関数は...

Nginx でバージョン番号と Web ページのキャッシュ時間を非表示にする方法

Nginx の最適化 - バージョン番号と Web ページのキャッシュ時間を非表示にするバージョン番...

Vue2.0は適応解像度を実装する

この記事では、適応解像度を実現するためのVue2.0の具体的なコードを参考までに紹介します。具体的な...

JavaScriptタイマーとボタン効果設定の詳細な説明

タイマー効果: <div> <font id='timeCount'...

画像の一時停止を実現するjQueryプラグイン

この記事では、画像の一時停止を実現するためのjQueryプラグインの具体的なコードを参考までに共有し...

js の一般的でない演算子と演算子の概要

一般的な演算子と JavaScript の演算子の概要カテゴリオペレーター算術演算子+、–、*、/、...

vue backtop コンポーネントを実装するための完全なコード

効果: コード: <テンプレート> <div class="back-t...

Dockerの基本的な手順

目次基本的な指示1. 現在のマシンのコンテナステータスを確認する2. イメージをダウンロードまたは取...

UbuntuにCMakeをインストールするいくつかの方法の詳細な説明

CMakeをインストール sudo apt をインストール cmake この方法はインストールが簡単...

非常に実用的なMySQL関数の包括的な概要、詳細な例の分析チュートリアル

目次1. MySQLの関数の説明2. 単行関数の分類3. キャラクター機能4. 数学関数5. 日付と...

alpineをベースにdockerfileで作成したクローラーScrapyイメージの実装

1.アルパインイメージをダウンロードする [root@DockerBrian ~]# docker ...