1
This commit is contained in:
46
admin/src/store/index.js
Normal file
46
admin/src/store/index.js
Normal file
@@ -0,0 +1,46 @@
|
||||
/**
|
||||
* 设备选择模块 - 用于统计页面的设备切换
|
||||
* 这个模块会被持久化到 localStorage
|
||||
*/
|
||||
const deviceModule = {
|
||||
namespaced: true,
|
||||
|
||||
state: {
|
||||
selectedDeviceSn: '', // 当前选中的设备 SN
|
||||
deviceList: [], // 设备列表
|
||||
},
|
||||
|
||||
mutations: {
|
||||
SET_SELECTED_DEVICE(state, deviceSn) {
|
||||
state.selectedDeviceSn = deviceSn
|
||||
},
|
||||
|
||||
SET_DEVICE_LIST(state, list) {
|
||||
state.deviceList = list
|
||||
// 如果没有选中的设备,且列表不为空,自动选中第一个
|
||||
if (!state.selectedDeviceSn && list.length > 0) {
|
||||
state.selectedDeviceSn = list[0].deviceSn
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
actions: {
|
||||
setSelectedDevice({ commit }, deviceSn) {
|
||||
commit('SET_SELECTED_DEVICE', deviceSn)
|
||||
},
|
||||
|
||||
setDeviceList({ commit }, list) {
|
||||
commit('SET_DEVICE_LIST', list)
|
||||
}
|
||||
},
|
||||
|
||||
getters: {
|
||||
selectedDeviceSn: state => state.selectedDeviceSn,
|
||||
deviceList: state => state.deviceList,
|
||||
selectedDevice: state => {
|
||||
return state.deviceList.find(d => d.deviceSn === state.selectedDeviceSn)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default deviceModule
|
||||
Reference in New Issue
Block a user