const viewer = { state: { viewerExist: false, calenderShow: false, visitedViews: [], cachedViews: [], twoOrThree: '三 维' }, mutations: { SET_VIEWEREXIST (state, viewerExist) { state.viewerExist = viewerExist }, SET_CALENDERSHOW (state, calenderShow) { state.calenderShow = calenderShow }, SET_TWOORTHREE (state, twoOrThree) { state.twoOrThree = twoOrThree }, DEL_VISITED_VIEWS: (state, view) => { for (const [i, v] of state.visitedViews.entries()) { if (v.path === view.path) { state.visitedViews.splice(i, 1) break } } for (const i of state.cachedViews) { if (i === view.name) { const index = state.cachedViews.indexOf(i) state.cachedViews.splice(index, 1) break } } } }, actions: { delVisitedViews ({ commit, state }, view) { return new Promise((resolve) => { commit('DEL_VISITED_VIEWS', view) resolve([...state.visitedViews]) }) } } } export default viewer