[Vuexシリーズ] - いくつかの使用の状態について詳しく説明

状態は、主に、我々は毎日使用するコンポーネントとの間の可変伝達を格納するために、オブジェクトストアのすべてのアプリケーション状態レベルに格納されています。

我々はスクラッチVuexプロジェクトから起動する方法のように、次のいくつかの用途の状態を説明するに焦点を当て今日は、私が書いた最初の記事を参照してください。見るためにクリック

使用:この$ストアを使用します。

次のように我々はまだどのようにアキュムレータの例を見て、具体的なコードは次のとおりです。

state.jsファイル内のカウント変数を追加します

constの状態= { 
  数:0 
} 
輸出デフォルトの状態

次のようにsrcフォルダでは、新しい状態のフォルダを作成し、新しいindex.vueファイルを作成します。

<テンプレート> 
  の<divクラス= "状態"> 
    <H2> {{カウント}} </ H2> 
    <ボタン@をクリック= "追加"> +追加</ボタン> 
  </ div> 
</テンプレート> 

の<script> 
のエクスポートデフォルト{ 
  計算:{ 
    数(){ 
      //第一种用法
      これを返す$ store.state.count。
    } 
  }、
  メソッド:{ 
    追加(){ 
      //第一种用法
      。この$のstore.state.count ++ 
    } 
  } 
} 
</ SCRIPT>

Vueのルートインスタンスストアオプションで登録し、店のインスタンスが訪問するこの。$ Storeからルートコンポーネントおよびサブアセンブリの下のすべてのサブコンポーネントに注入されます。

二つの使い方:ファイル参照store.js

次のように具体的なコードは次のとおりです。

ファイルの内容の上記の例にstate.js参照し、以下のように、状態/ index.vueを変更します。

<テンプレート> 
  の<divクラス= "状態"> 
    <H2> {{カウント}} </ H2> 
    <ボタン@をクリック= "追加"> +追加</ボタン> 
  </ div> 
</テンプレート> 

の<script> 
インポート'@ /店舗/ store.js'から店舗
輸出デフォルト{ 
  {:計算された
    回数(){ 
      //第二种用法
      store.state.countを返す
    } 
  }、
  メソッド:{ 
    追加(){ 
      //第二种用法
      店.state.count ++ 
    } 
  } 
} 
</ SCRIPT>

この方法Vueのモジュール構造のシステム、状態における各成分の使用を必要とし、しばしばインポートする必要があります。

シンタックス3:使用mapStateヘルパー

次のように具体的なコードは次のとおりです。

ファイルの内容の上記の例にstate.js参照し、以下のように、状態/ index.vueを変更します。

<テンプレート> 
  の<divクラス= "状態"> 
    <H2> {{カウント}} </ H2> 
  </ div> 
</テンプレート> 

<スクリプト> 
'@ /店舗/ store.js'から//インポートショップ
インポート{ 'vuex'からmapState} 
{エクスポートデフォルト
  :(mapState {計算
    :カウント状態=> state.count 
  )} 
} 
</ SCRIPT>

若しくは

<テンプレート> 
  の<divクラス= "状態"> 
    <H2> {{カウント}} </ H2> 
  </ div> 
</テンプレート> 

<スクリプト> 
'@ /店舗/ store.js'から//インポートショップ
インポート{ 'vuex'からmapState} 
輸出デフォルト{ 
  計算:{ 
    ... mapState([ '数'])
  } 
} 
</ SCRIPT>

これらの状態は、プロパティを計算するために宣言されたときにコンポーネントが複数の状態を取得する必要がある場合、いくつかの重複や冗長になります。この問題を解決するために、我々はmapStateヘルパーを使用することができ、私たちは、計算プロパティの生成を助けます

 

おすすめ

転載: www.cnblogs.com/wangshucheng/p/11203152.html