import Vue from 'vue'; import Vuex from 'vuex'; Vue.use(Vuex); // vue的插件机制 // Vuex.Store 构造器选项 const store = new Vuex.Store({ // 为了不和页面或组件的data中的造成混淆,state中的变量前面建议加上$符号 state: { isMusic: false, time: 0, // 计时时间 timer: null, // 计时对象 trainInfo: {}, // 患者名称 patientName: '', trainPath: '', }, mutations: { // 更改state中状态的逻辑,同步操作 setIsMusic(state, data) { state.isMusic = data; }, // 设置训练信息 setTrainInfo(state, data) { state.trainInfo = data; console.log(' state.trainInfo: ', state.trainInfo); }, // 自由训练患者名称 setPatientName(state, data) { state.patientName = data; }, // 自由训练患者名称 setTrainPath(state, data) { state.trainPath = data; }, // ----------全局定时器处理----------- }, actions: { // 开始计时 startTime({ commit }) { let state = this.state; // console.log('state.time: ', commit, this.state); state.timer = setInterval(() => { state.time++; }, 1000); }, // 设置计时时间 setTime(time) { console.log('time', time); let state = this.state; state.tiem = time; }, // 停止计时器 stopTimer() { let state = this.state; clearInterval(state.timer); state.timer = null; }, // 重置计时器 resetTime() { let state = this.state; state.time = 0; }, }, }); export default store;