import { createSlice } from '@reduxjs/toolkit'; export const slice = createSlice({ name: 'tabPanes', initialState: { activeTab: '', panes:[], toUnRead:false }, reducers: { close: (state,action) => { //关闭tab state.panes.splice(action.payload.del,1); state.activeTab = action.payload.active; }, closeOther:(state,action) => { //关闭其他tab const pane = state.panes[action.payload.del]; state.panes = [pane]; //state.activeTab = action.payload.active; }, add: (state,action) => { //打开新tab state.panes.push(action.payload); state.activeTab = action.payload.key; state.toUnRead = action.payload.isUnRead; //是否筛选未读 }, active:(state,action) => { //切换tab state.activeTab = action.payload.idName; //当前激活的tab state.toUnRead = action.payload.isUnRead; //是否筛选未读 }, panesNow: (state, action) => { //切换tab state.panes = []; }, }, }); export const { close, closeOther, active, add, panesNow } = slice.actions; export default slice.reducer;