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 の基本的な使い方
HTML を初めて使用する多くの人にとって、テーブル <table> は最もよく使用され...
目次1. クライアントとサーバー間の通信方法2. クエリキャッシュ3. クエリ最適化処理4. クエリ...
問題 [root@zh ~]# [root@zh ~]# [root@zh ~]# yum -y d...
1: <a> タグを使用してページにリンクする場合、target 属性の役割は誰もが知っ...
テンプレート 1: ログイン.vue <テンプレート> <p class=&quo...
Linux は現在最も広く使用されているサーバー オペレーティング システムです。Unix をベー...
Server-Uソフトウェアの紹介Server-U は非常に強力なファイル マネージャーです。FTP...
この記事の例では、検証コードを作成して取得するためのjsキャンバスの具体的なコードを共有しています。...
XHTML は現在国際的に推奨されている標準的な Web サイト設計言語です。Webjx.com も...
まずはエフェクト画像を投稿します:全体的なスタイルとレイアウトが崩れないように、スクロール バーがロ...
いわゆるスライディングドアテクノロジーとは、さまざまな長さのテキストに合わせてボックスの背景を自動的...
MySQL は非常に強力なリレーショナル データベースです。しかし、初心者の中には、インストールや設...
インストール時間を節約するために、公式の mysql docker イメージを使用して mysql ...
今日、データベース操作はますますアプリケーション全体のパフォーマンスのボトルネックになりつつあり、こ...
問題の背景:再生中のビデオのスクリーンショットを撮る必要があります。ビデオはビデオタグを使用して再生...