vuexの問題

1は、変異が(vuexストアデータが変更への変異の唯一の方法である)のサービスを処理するためにデータを同期するために使用され、突然変異誘発は、最も重要なことはできませんデバッグするために、状態を変更することはできませんされていない;
2、アクションが最終的に提出された非同期データを処理データベース、突然変異を提出し、アクションは直接の状態を変更するのではなく、任意の非同期操作を含めることができます。
3、同じ負荷モードと方式をサポートするためのアクションは、オブジェクトを配布します:

// 以载荷形式分发
store.dispatch('incrementAsync', {
  amount: 10
})

// 以对象形式分发
store.dispatch({
  type: 'incrementAsync',
  amount: 10
})

4、mapState効果:、これらの状態がプロパティを計算するために複数の状態の時間を取得するためのコンポーネントのニーズに宣言されているが、mapStateヘルパーの助けを使用することができ、私たちは、計算プロパティを生成し、いくつかの重複や冗長になります

computed: mapState({
    count: 'count', // 第一种写法
    sex: (state) => state.sex, // 第二种写法
    from: function (state) { // 用普通函数this指向vue实例,要注意
      return this.str + ':' + state.from
    },
    // 注意下面的写法看起来和上面相同,事实上箭头函数的this指针并没有指向vue实例,因此不要滥用箭头函数
    // from: (state) => this.str + ':' + state.from
    myCmpted: function () {
      // 这里不需要state,测试一下computed的原有用法
      return '测试' + this.str
    }
  }),
代码示例来源:闲人王昱珩 
也可以使用ES6中的扩展运算符”…”,【不知道扩展运算符的朋友可自行百度】	
	   computed:{
            ...mapState(['count','info']),
            // count(){
            //     return this.$store.state.count
            // },
            //  info(){
            //     return this.$store.state.info
            // }
    
        },

5、mapMutations / mapActionsは、ときに内部伝送パラメータを調整する通常の方法の方法に突然変異/アクション機能を結合することです。
:「『設定/ index.js / assetsPublicPath 6、展開する必要がある前 /』」、 変更パス設定サーバです。
図7に示すように、「ゲッター」は、(プロパティストアを計算するために考慮することができます)。プロパティとして計算され、ゲッター戻り値は、その依存関係に基づいて行われるキャッシュされ、それが値に依存している場合にのみ、変更された再計算される;
パラメータ:最初のパラメータとして状態を受け入れ、また、他を受け入れることができ2番目のパラメータとしてゲッター;
指摘は、キャッシュがアクセス属性に応じたシステムにおいて、前記ゲッターのVueの一部であり、メソッドを介してアクセスするゲッターは、毎回コールするが、結果はキャッシュされません。
唯一のローカル・コンピューティングゲッター特性マップストア内mapGetters補助機能:

常に更新されます。

发布了19 篇原创文章 · 获赞 11 · 访问量 1万+

おすすめ

転載: blog.csdn.net/weixin_43392673/article/details/88024816