UNPKG

linkmore-design

Version:

🌈 🚀lm组件库。🚀

105 lines (102 loc) 1.68 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.reducer = exports.initialState = exports.default = void 0; // 初始化状态值 const defaultState = { visible: false, isChange: false, // 是否改变 filter: [], columns: [], size: 'middle', card: [], cardMode: 'single', previewSize: 40 }; // 仅在初始化时触发一次 const initialState = props => { const { filter = [], columns = [], size, cardMode, previewSize, card = [] } = props || {}; return { ...defaultState, filter, columns, size, card, cardMode, previewSize }; }; // 状态管理操作 exports.initialState = initialState; const reducer = (state, action) => { const { visible, filter, columns, card, size, cardMode, previewSize, props, isChange } = action; const dispatch = { init: { ...state, ...initialState(props) }, update: { ...state, ...props }, changeVisible: { ...state, visible }, changeIsChange: { ...state, isChange }, changeFilter: { ...state, filter }, changeColumns: { ...state, columns }, changeCard: { ...state, isChange: true, card }, changeSize: { ...state, size }, changeCardMode: { ...state, cardMode }, changePreviewSize: { ...state, previewSize } }; if (action.type in dispatch) { return dispatch[action.type]; } throw new Error(); }; exports.reducer = reducer; var _default = reducer; exports.default = _default;