tabPanes.js 816 B

123456789101112131415161718192021222324252627
  1. import { createSlice } from '@reduxjs/toolkit';
  2. export const slice = createSlice({
  3. name: 'tabPanes',
  4. initialState: {
  5. activeTab: '',
  6. panes:[{title:'111',content:'111',key:'111'}]
  7. },
  8. reducers: {
  9. close: (state,action) => { //关闭tab
  10. state.activeTab = action.activeTab||'';
  11. state.panes.slice(action.index,1);
  12. },
  13. add: (state,action) => { //打开新tab
  14. console.log(33,action)
  15. state.panes.push(action.payload);
  16. state.activeTab = action.payload.key;
  17. },
  18. active:(state,action) => { console.log(action) //切换tab
  19. state.activeTab = action.payload;
  20. },
  21. },
  22. });
  23. export const { close, active, add} = slice.actions;
  24. export default slice.reducer;