import {createStore} from 'vuex'; import {toValue} from 'vue' const updateModule = { namespaced: true, state: { update_dialog_show: false, update_config: {}, update_status: {}, }, getter: { dialog_change: state => { state.update_dialog_show = !state.update_dialog_show return state.update_dialog_show }, }, mutations: { add_update_cine: (state, payload) => { state.update_config[payload.ip] = payload.config }, add_update_status: (state, payload) => { state.update_status[payload.ip] = payload.status }, change_update_status: (state, ip) => { if (state.update_status[ip] !== undefined) { state.update_status[ip] = !state.update_status[ip] } }, clear_update_status: (state, ip) => { if (state.update_status[ip]) { delete state.update_status[ip] } }, }, actions: {}, } const ecApiModule = { namespaced: true, state: { ec_api_data: {}, // 所有api数据 ec_select_api: [], // 默认选中的api first_tab_api_id: 1 }, getters: { ec_api_data_getter: state => { return state.ec_api_data }, ec_select_api_getter: state => { return state.ec_select_api }, ec_select_api_params_getter: state => { return state.ec_select_api_params }, ec_select_api_params_getter_by_id: (state, id) => { return state.ec_select_api_params[id] } }, mutations: { change_ec_select_api: (state, payload) => { // console.log('payload', payload) payload.forEach((item) => { if (state.ec_select_api.indexOf(item) === -1) { state.ec_select_api.push(item) } }) state.ec_select_api.forEach((item) => { if (payload.indexOf(item) === -1) { state.ec_select_api.splice(state.ec_select_api.indexOf(item), 1) } }) // console.log('state.ec_select_api', state.ec_select_api) }, handle_sort_ec_select_api: (state, payload) => { // console.log(state.ec_select_api) const movedTab = state.ec_select_api.splice(payload.oldIndex - 1, 1)[0]; // console.log(state.ec_select_api) // console.log('movedTab', movedTab) state.ec_select_api.splice(payload.newIndex - 1, 0, toValue(movedTab)); }, add_ec_api_data: (state, payload) => { // console.log('payload', payload) state.ec_api_data = payload } }, actions: {}, } export default createStore({ modules: { updateModule, ecApiModule, }, })