今回はvuexのstateオブジェクトの使い方についてまとめてみました。vuexのstateオブジェクトを使う際の注意点について、実際の事例を見てみましょう。
以下は皆さんのための私のvuexの構造です
以下はストアフォルダ配下のstate.jsとindex.jsの内容です
//state.js const state = { headerBgOpacity:0, loginStatus:0, count:66 } export default state //index.js import Vue from 'vue' import Vuex from 'vuex' import state from './state' import actions from './actions' import getters from './getters' import mutations from './mutations' Vue.use(Vuex) export default new Vuex.Store({ state, actions, getters, mutations })
それではtest.vueでvuexのstateオブジェクトを使い始めましょうコンポーネント
方法 1
<template> <p class="test"> {{$store.state.count}} <!--第一种方式--> </p> </template> <script type="text/ecmascript-6"> export default{ name:'test', data(){ return{ } } } </script> <style> </style>
方法 2
<template> <p class="test"> {{count}} <!--步骤二--> </p> </template> <script type="text/ecmascript-6"> export default{ name:'test', data(){ return{} }, computed:{ count(){ return this.$store.state.count; //步骤一 } } } </script> <style> </style>
方法 3
<template> <p class="test"> {{count}} <!--步骤三--> </p> </template> <script type="text/ecmascript-6"> import {mapState} from 'vuex' //步骤一 export default{ name:'test', data(){ return{} }, computed:mapState({ //步骤二,对象方式 count:state => state.count }) } </script> <style> </style>
方法 4
<template> <p class="test"> {{count}} <!--步骤三--> </p> </template> <script type="text/ecmascript-6"> import {mapState} from 'vuex' //步骤一 export default{ name:'test', data(){ return{} }, computed:mapState([ //步骤二,数组方式 "count" ]) } </script> <style> </style>
方法 5
<template> <p class="test"> {{count}} <!--步骤三--> </p> </template> <script type="text/ecmascript-6"> import {mapState} from 'vuex' //步骤一 export default{ name:'test', data(){ return{} }, computed:{ ...mapState([ //步骤二,三个点方式 "count" ]) } } </script> <style> </style>
ES6 のクラスを使用して Vue を模倣し、双方向バインディングを作成する
以上がvuexのstateオブジェクトの使い方まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。