import { setStore, getStore } from 'utils/store' import website from '@/config/website' const tagWel = website.fistPage const navs = { state: { bsTagList: getStore({ name: 'bsTagList' }) || [], tag: getStore({ name: 'tag' }) || {}, tagWel: tagWel, }, mutations: { ADD_TAG: (state, action) => { if (typeof action.name == 'function') action.name = action.name(action.query) state.tag = action setStore({ name: 'tag', content: state.tag }) if (state.bsTagList.some(ele => ele.fullPath == action.fullPath)) return state.bsTagList.push(action) setStore({ name: 'bsTagList', content: state.bsTagList }) }, DEL_TAG: (state, action) => { state.bsTagList = state.bsTagList.filter(item => { return item.fullPath !== action.fullPath }) setStore({ name: 'bsTagList', content: state.bsTagList }) }, DEL_ALL_TAG: (state, bsTagList = []) => { state.bsTagList = bsTagList setStore({ name: 'bsTagList', content: state.bsTagList }) }, DEL_TAG_OTHER: state => { state.bsTagList = state.bsTagList.filter(item => { return [state.tag.fullPath, website.fistPage.path].includes(item.fullPath) }) setStore({ name: 'bsTagList', content: state.bsTagList }) }, }, } export default navs