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-8.0.12-winx64 解凍版のインストールを記録して、みんなで共有しました。 1....
まずは例を見てみましょうコードをコピーコードは次のとおりです。 <!DOCTYPE html ...
MySQLにおける静的変数の役割の詳細な説明静的変数の使用 静的変数サンプルコード: 関数テスト()...
<br />オリジナル: http://www.alistapart.com/artic...
はじめに:ナビゲーション バーなどのコンポーネント ベースのアイデアを使用して機能モジュールを完全に...
1. シナリオの説明:私たちの環境ではマイクロサービスを使用しています。各プログラムには個別のプロセ...
ウェブサイトの場合、ユーザビリティとは、ユーザーが必要な情報を効果的に見つけたり、タスクを完了したり...
1: Dockerプライベートウェアハウスのインストール1. イメージリポジトリからイメージをダウン...
しかし最近、この方法を使用すると問題が発生することがわかりました。コードを参照してください。コードを...
私は長い間この問題に悩まされていましたが、検索してみたところ、実際にこの問題を解決した人がいることが...
1) キャッシュメカニズムの紹介Linux システムでは、ファイルシステムのパフォーマンスを向上させ...
Nginx を使用して同じドメイン名で複数のプロジェクトを構成するには、次の 2 つの方法があります...
vuex 永続状態基本原則: すべての vuex データをローカルストレージに保存し、ページが更新さ...
1. データベースを作成します。 データ data _name を作成します。 PHP でデータベー...
目次序文 - Vue ルーティング1. 最も基本的なルーティング構成1. router/index....