Vue のリスナーの基本的な使用例

Vue のリスナーの基本的な使用例

序文

Vue は、watch オプションを通じてデータの変更に応答するより一般的な方法を提供します。このアプローチは、データが変更されたときに非同期またはコストのかかる操作を実行する必要がある場合に最も役立ちます。

1. リスナーの基本的な使い方

<div id="demo">{{ fullName }}</div>
var vm = 新しい Vue({
el: '#demo',
データ: { 
    ファーストネーム: 'Foo', 
    姓: 'バー', 
    fullName: 'Foo Bar' }, 
時計: 
    firstName: 関数 (val) { 
        this.fullName = val + ' ' + this.lastName }, 
    lastName: 関数 (val) { 
        this.fullName = this.firstName + ' ' + val } } })

このコードの目的は、firstName と fullName を監視し、変更があった場合に fullname の値を変更することです。

2. リスナー形式

メソッド形式のリスナー

  • デメリット 1: ページに初めてアクセスしたときに自動的にトリガーされない!
  • デメリット 2: オブジェクトをリッスンしている場合、属性のプロパティが変更されると、リスナーはトリガーされません。

オブジェクト形式リスナー

  • メリット1: ページに入るとすぐに自動で発動できる!
  • メリット2:監視対象内の属性が変更されたかどうかの詳細な監視が可能になります。

3. ページに入るとすぐに監視とディープモニタリングをトリガーする

ページに入るとすぐにリスナーをトリガーします

これは即時オプションを追加することで実現されます

定数vm = 新しいVue({
    el: '#app',
    データ: {
        情報:
            ユーザー名: 'admin'
        } 
    },
    時計:{
        情報:
            ハンドル(newVal){
                コンソールログ(新しい値)
            },
            // ページに入るとすぐにリスナーをトリガーしますimmediate: true
        }
    }
})

ディープモニタリング

上記のコードでは、ユーザー名が変更されたときに正常に監視できません。変更されるのはオブジェクト属性の値であるため、詳細な監視が必要です。deepオプションを追加するだけです。

定数vm = 新しいVue({
    el: '#app',
    データ: {
        情報:
            ユーザー名: 'admin'
        } 
    },
    時計:{
        情報:
            ハンドル(newVal){
                コンソールログ(新しい値)
            },
            // ページに入るとすぐにリスナーをトリガーしますimmediate: true,
            // 詳細な監視を実装します。オブジェクトのいずれかのプロパティが変更される限り、「オブジェクト監視」がトリガーされます。
            深い: 本当
        }
    }
})

ディープリスニングはリスニングオブジェクトのサブプロパティの値を返します。

上記のコードの実行結果は、info オブジェクトを印刷することです。username の値を印刷したいのですが、newVal.username を追加するのは面倒です。実際には、変更されたサブ属性の値を直接監視して印刷することができます。監視するサブ属性を一重引用符で囲むだけです。

定数vm = 新しいVue({
    el: '#app',
    データ: {
        情報:
            ユーザー名: 'admin'
        } 
    },
    時計:{
        'info.ユーザー名': {
            ハンドル(newVal){
                コンソールログ(新しい値)
            }
        }
    }
})

やっと

⚽この記事では、Vue のリスナーの基本的な使い方とディープリスニングの実装方法を紹介します。読んで何か得ていただければ幸いです〜

Vue のリスナーの基本的な使い方についてはこれで終了です。Vue リスナーの使い方についてさらに詳しく知りたい方は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

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

<<:  Dockerイメージストレージoverlayfsの使用

>>:  MySQLにおける分散ロックの考え方をDBの助けを借りて詳しく説明します

推薦する

Docker で Tomcat を使用して Web アプリケーションを迅速にデプロイする方法の例

Docker の基本的な操作を学習した後、コンテナにいくつかの基本的なアプリケーションをデプロイして...

JavaScript で文字列を数値に変換する方法

目次1.parseInt(文字列、基数) 2. 数値() 3.parseFloat()主なメソッドは...

ApacheとTomcatを組み合わせて静的状態と動的状態を分離する方法

実験環境ApacheとTomcatは両方ともIPアドレス192.168.153.136のホストにイン...

HTMLページでチェックボックスを操作する方法

チェックボックスは Web ページで非常によく使用されます。e コマースの Web サイトでもプラッ...

初心者向けWebサイト構築ガイド⑥:FlashFXPの詳しい使い方

今日は、サイトの設定やウェブサイトのアップロードなど、FlashFXP の最も基本的な機能を紹介しま...

MySQL トリガーの定義と使用方法の簡単な例

この記事では、MySQL トリガーの定義と使用方法について説明します。ご参考までに、詳細は以下の通り...

Vue+video.jsはビデオプレイリストを実装します

この記事では、ビデオプレイリストを実装するためのvue + video.jsの具体的なコードを参考ま...

Linux 仮想ホストで SourceGuardian (sg11) 暗号化コンポーネントを有効にする詳細な手順

注: sg11 弊社では Linux システム仮想ホストのセルフインストールのみサポートしております...

Vue は書籍管理ケースを実装します

この記事では、書籍管理を実装するためのVueの具体的なコードを例として紹介します。具体的な内容は次の...

Vueコンポーネントドキュメントを自動生成する方法を分析する

目次1. 現状2. コミュニティソリューション2.1 事業レビュー3. 技術的ソリューション3.1....

OEL7.6 ソースコードから MYSQL5.7 をインストールするチュートリアル

まず、公式サイト https://dev.mysql.com/downloads/mysql/5.7...

HTML チュートリアル: よく使われる HTML タグのコレクション (5)

関連記事:初心者が学ぶ HTML タグ (4)導入された HTML タグは、必ずしも XHTML 仕...

Vue ローカルコンポーネントデータ共有 Vue.observable() の使用

コンポーネントが詳細になるにつれて、複数のコンポーネントが状態を共有する状況に遭遇するでしょう。Vu...

ウェブページからテキスト透かしを削除する2つの簡単な方法

<br /> 特定の Web サイトを閲覧して、優れた Web ページを見つけた場合、そ...

MySQL Innodb インデックス メカニズムの詳細な紹介

1. インデックスとは何ですか?インデックスは、ストレージ エンジンがレコードをすばやく検索するため...