1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- // 页面路径:store/index.js
- import Vue from 'vue'
- import Vuex from 'vuex'
- import persistedstate from 'vuex-persistedstate'
- Vue.use(Vuex); //vue的插件机制
- //Vuex.Store 构造器选项
- const store = new Vuex.Store({
- actions: {
- //相当于异步的操作,不能直接改变state的值,只能通过触发mutations的方法才能改变
- asyncUpdateUser(context, user) {
- context.commit('updateUser', user);
- }
- },
- mutations: {
- //相当于同步的操作
- updateUser(state, user) {
- state.user = user;
- },
- // 修改头像
- updateAvatar(state, data) {
- state.user.avatar = data;
- },
- // 修改昵称nc
- updateNc(state, data) {
- state.user.nc = data;
- },
- // 添加聊天信息
- addMsg(state, data) {
- state.message.push(data)
- },
- // 保存发布内容
- saveformData(state, formData) {
- state.formData = formData;
- },
- removeData(state) {
- state.formData = {};
- }
- },
- state: {
- //公共的变量,存储数据,这里的变量不能随便修改,只能通过触发mutations的方法才能改变
- user: {
- openid: '',
- avatar: "",
- desc: "",
- email: "",
- phone: "",
- sex: "",
- token: "",
- username: "暂无",
- __v: 0,
- _id: ""
- },
- // 聊天记录
- // message: [],
-
- formData: {}
- },
- getters: {
- getUser(state) {
- return state.user;
- },
- getMsg(state) {
- return state.message;
- }
- },
- plugins: [persistedstate({
- // 传入参数
- storage: {
- getItem: (key) => uni.getStorageSync(key),
- setItem: (key, val) => uni.setStorageSync(key, val),
- removeItem: (key) => uni.removeStorageSync(key)
- }
- })]
- })
- export default store
|