状态管理,类似后端的session,可以用来记录状态,一些需要验证类的数据
//安装
npm install vuex --save
//引入
import Vuex from 'vuex';
Vue.use(Vuex);
//调用
const store = new Vuex.Store({})
const app = new Vue({
el: '#app',
router,
store,
render: h => {
return h(App)
}
})
state: 存放状态, 可以直接读取,但是不能修改,如果需要修改,只能通过调用mutations 里面的方法
mutations: state成员操作
getters: 加工state成员给外界
actions: 异步操作,在vue文件中,通过使用actions 来调用mutations,从而修改state的状态
modules: 模块化状态管理
vue 在xx.vue中修改vuex state 的值方法
list.vue
mounted(){
//初始化时通过Vuex actions获取商品列表信息
this.$store.dispatch('getProductList');
}
index.js /vuex.js
state: {
//商品列表信息
productList: [],
},
mutations: {
//添加商品列表
setProductList(state, data){
state.productList = data;
}
},
actions: {
//异步请求商品列表,暂且使用setTimeout
getProductList(context){
setTimeout(() => {
context.commit('setProductList', product_data)
}, 500);
},
}
vue 中通过vuex 的actions控制state 的productList,调用方法
this.$store.dispatch('getProductList');
context.commit('setProductList', product_data)
//调用setProductList 方法,product_data 为 第二个参数
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/97991.html