linkmore-design
Version:
🌈 🚀lm组件库。🚀
67 lines (65 loc) • 1.24 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.reducer = exports.initialState = exports.default = void 0;
// 状态管理操作
const reducer = (state, action) => {
const {
fileList,
percent,
cropFile,
preview
} = action;
switch (action.type) {
case 'changeFileList':
return {
...state,
fileList
};
case 'changePercent':
return {
...state,
percent
};
case 'changeCropFile':
return {
...state,
cropFile
};
case 'changePreview':
return {
...state,
preview: {
...state.preview,
...preview
}
};
default:
throw new Error();
}
};
// 仅在初始化时触发一次
exports.reducer = reducer;
const initialState = props => {
const {
defaultFileList,
upload
} = props;
return {
upload,
process: 0,
status: 'done',
fileList: defaultFileList,
// 用于非受控模式时的数据收集
cropFile: null,
// 需要裁剪的图片
preview: {
index: 0,
visible: false
}
};
};
exports.initialState = initialState;
var _default = reducer;
exports.default = _default;
;