Vuex を使用せずにコンポーネント間で値を渡す方法は、親から子、または兄弟コンポーネントを介して行われます。 父から息子へ:父親コンポーネント: <テンプレート> <div> <HELLOWORLD :needData="コンテンツ"></HELLOWORLD> </div> </テンプレート> <スクリプト> '../components/HelloWorld.vue' から HELLOWORLD をインポートします。 エクスポートデフォルト{ コンポーネント:{ こんにちは世界 }, データ(){ 戻る { コンテンツ:"コンテンツ" } } } </スクリプト> <style lang="less" スコープ> </スタイル> SonComponent (サブコンポーネント名は HELLOWORLD): <テンプレート> <div> <h1>ハローワールド</h1> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ プロパティ:["needData"], データ(){ 戻る { H:this.needData、 } }, マウントされた(){ コンソールにログ出力します。 } } </スクリプト> <style lang="less" スコープ> </スタイル> 息子から父へ:父親コンポーネント: <テンプレート> <div> <HELLOWORLD @sendData="getData"></HELLOWORLD> </div> </テンプレート> <スクリプト> '../components/HelloWorld.vue' から HELLOWORLD をインポートします。 エクスポートデフォルト{ コンポーネント:{ こんにちは世界 }, データ(){ 戻る { } }, 方法:{ getData(sonData){ console.log("データ=>",sonData); }, } } </スクリプト> <style lang="less" スコープ> </スタイル> 息子コンポーネント: <テンプレート> <div> <h1>ハローワールド</h1> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ データ(){ 戻る { コンテンツ:"コンテンツ" } }, マウントされた(){ this.$emit("sendData",this.content); } } </スクリプト> <style lang="less" スコープ> </スタイル> 効果画像: 実際、親コンポーネントと子コンポーネント間でデータを転送するには、親コンポーネントの関数または子コンポーネントの関数を呼び出すことによってデータを転送することもできます。 Vueでは、子コンポーネントが親コンポーネントの関数を呼び出す。 https://www.jb51.net/article/134732.htm Vue親コンポーネントは子コンポーネントの関数を呼び出す https://www.jb51.net/article/219793.htm Vuex は Vue フレームワークの不可欠な部分です。
Vue の store.js には 5 つのプロパティがあります。 構造は次のとおりです。 a={とする 州: { 名前:"モジュールA" }, //ミューテーションは特に状態属性のデータを変更するために使用されます。ミューテーション: { setFun(状態、項目){ 状態名=アイテム; } } } デフォルトの新しいVuex.Storeをエクスポートします({ //state はデータの保存専用ですstate: { 数:100, コンポーネントを使用する:{ 名前:"A", }, useBcomponent:"コンテンツ", }, //ミューテーションは特に状態属性のデータを変更するために使用されます。ミューテーション: { setStateFun(状態、項目){ state.useBcomponent="Bコンポーネント"; } }, アクション: { httpGetData(ストア、アイテム){ タイムアウトを設定します(()=>{ console.log(アイテム); store.commit("setStateFun",アイテム); },3000) } }, ゲッター:{ //ゲッター内の関数を呼び出すときにパラメータは渡されません getterFun1(state){ state.num++ を返す } //ゲッターで関数を呼び出す場合、入力パラメータがあります gettterFun2(state){ 関数を返す(val){ state.num+=val を返します。 } } }, モジュール: モジュールA:a } }); } 状態内のデータは、さまざまなコンポーネントからアクセスできます。 状態データを取得します: this.$store.state.state オブジェクト内のデータ。 たとえば、let val = this.$store.state.num; 状態データを変更するには、Vuex の変異オブジェクト内の関数を呼び出すだけです。 this.$store.commit("関数名","データ"); たとえば、 this.$store.commit("setStateFun","testSetItem"); Vuex でリクエストを行うために使用されるアクション オブジェクト this.$store.dispatch("関数名","データ"); たとえば、 this.$store.dispatch("httpGetData","testItem"); Vueの計算プロパティに似たゲッターオブジェクト this.$store.getters.関数名; たとえば、パラメータが入力されていない場合は this.$store.getters.getterFun1; //入力パラメータがある場合 this.$store.getters.getterFun2(123); モジュール オブジェクトは、使用する必要があるストア モジュールを分離することに似ています。各モジュール オブジェクトはモジュールに対応します。 //モジュール オブジェクトの状態データを取得します。this.$store.state.modules オブジェクト名.state 値; たとえば this.$store.state.ModuleA.name //モジュール オブジェクトのミューテーション関数を使用します。this.$store.commit("関数名","入力パラメータ データ"); たとえば、 this.$store.commit("setFun","itemabc"); //ここで注意すべき点は、モジュールモジュールと外部(モジュールオブジェクトモジュールではない)のミューテーションオブジェクトに同じ名前の関数がある場合、呼び出されたときに同じ名前の両方の関数が実行されるということです。 これで、Vue コンポーネント (Vuex を含む) 間の値の転送について簡単に説明したこの記事は終了です。Vue コンポーネント間の値の転送に関する詳細なコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Linux (CentOS7) で RPM を使用して MySQL 8.0.11 をインストールするチュートリアル
>>: MySQL における UNION と UNION ALL の基本的な使い方
MySQL データベース インデックスが B+ ツリーを使用する理由をさらに分析する前に、データ構...
目次1. スクリプトvim環境2. シェルスクリプトで環境を定義する方法3. シェルスクリプト内の翻...
MySQL の MyISAM エンジンと InnoDB エンジンはどちらもデフォルトで B+ ツリー...
Linux での Tomcat の起動とシャットダウンLinux システムでは、コマンド操作を使用し...
キーコードは次のとおりです。コードをコピーコードは次のとおりです。 html{高さ:100%; }コ...
画像プレビュー機能付きのアップロードフォーム、完全なHTMLコードは次のとおりです。 <htm...
重要なデータはバックアップする必要があり、リアルタイムでバックアップする必要があります。そうしないと...
jQueryを使用してフォーム検証を実装します。参考までに、具体的な内容は次のとおりです。登録.ht...
1. Apacheをインストールする # yum インストール -y httpd httpd-de...
「人間中心」と「グリーンデザイン」という2つの視点から考える——デザイン業界の同僚とも議論する2つの...
var() の紹介と使用法詳細 (MDN) IEは無効ですが、他の主流のブラウザは有効ですvar()...
1. Apacheをインストールする $ sudo apt update && su...
目次1. 解凍コマンド1.1 構文1.2 オプション2. 例1. 解凍コマンドunzip コマンドは...
はじめに以前は、Docker イメージは Azure のコンテナー レジストリに保存されていました。...
公式サイトから mysql-5.7.19-winx64 をダウンロードします。これはシステムの 64...