安装
npm i vuex --save
---------------------------
import Vuex from 'vuex'
Vue.use(Vuex);
vue3 使用vuex
创建store仓库:/store/index.js
import { createStore } from 'vuex';
export default createStore({
state: {name: 123 },
mutations:{
getname(state,newVal){
this.state.name=newVal;
}
}, //同步方法:(只有mutations才能改state的值)
actions:{
getnameAsync(){ ... }
}, //异步方法
geeter:{}, //相当于计算属性
modules: {} //将vuex分块
})
组件里使用
import {useStore} from 'vuex'
export default {
setup(){
const store = useStore();
console.log(store.state.name); //获取
store.commit("getname", 12345); //修改
store.dispatch("getnameAsync", 12345); //修改
}
}