1.vuex的作用
vuex是vue的一个状态管理库,用于各组件之间进行数据共享,并且这个数据是响应式的,比如说一个组件中将vuex的值加1,另一个组件中显示的这个值会自动变化为加1后的值。所以有个很好的应用实例就是:登录的状态、信息的存储。
2.安装
cnpm install vuex --save
3.封装
新建vuex目录,该目录下新建store.js。
import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex);
//state在vuex中用于存储数据
var state = {
count:1
}
//mutations里面放的是方法,方法主要用于改变state里面的数据
var mutations = {
incCount(){
++state.count;
}
}
//getters的作用和用法类似于vue中的computed
var getters = {
testNum:(state)=>{
return state.count*2;
}
}
//实例化vuxe.store
const store = new Vuex.Store({
state:state,
mutations:mutations,
getters:getters
})
//抛出暴露
export default store;
4.注册
在main.js中全局注册
import store from "./vuex/store";
new Vue({
el: '#app',
router:router,//挂载路由
store:store,//子组件使用this.$store访问(增加的内容)
render: h => h(App)
})
5.使用
使用state中的数据:
{{this.$store.state.count}}
使用mutations里的方法:
this.$store.commit('incCount');
使用getters中的testNum:
this.$store.getters.testNum;
当state中count的值改变时,testNum的值也自动随着变化,count的两倍。
另外actions感觉没什么用,也用的少,需要的可自行查看官方文档。
结语
以上就是vuex的基本使用。
Korb1n 发布了19 篇原创文章 · 获赞 15 · 访问量 5559 私信 关注