1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- const arr2obj = (data, keyName, valueName) =>
- Object.fromEntries(data.map((item) => [item[keyName], item[valueName]]));
- export const initColumns = (
- arr,
- prop = { disabled: false, readonly: false, clearable: false }
- ) => {
- return arr.map((element) => {
- element.config = element.config || {};
- if (element.type === "Input") {
- }
- if (element.type === "InputDialog") {
- prop.readonly = true;
- }
- if (element.type === "InputNumber") {
- element.config = { controlsPosition: "right", ...element.config };
- }
- if (element.type === "Select") {
- }
- if (element.type === "DatePicker") {
- element.config = { type: "date", ...element.config };
- }
- if (element.type === "Upload") {
- element.value = [];
- }
- return { ...element, ...prop };
- });
- };
- // 初始化参数
- export const initParams = (prop, key = "key", value = "value") =>
- arr2obj(prop, key, value);
- // 初始化字典
- export const initDicts = (prop) =>
- prop
- .filter((column) => column.type === "Select")
- .map((column) => column.config.optionsName);
- // 初始化校验
- export const initRules = (prop) => {
- const rules = {};
- prop
- .filter((column) => column.require)
- .forEach((column) => {
- const message = `${column.title}不能为空`;
- rules[column.key] = [
- { required: true, message: message, trigger: "change" },
- ];
- });
- return rules;
- };
- const pageSizes = [25, 50, 100];
- const layout = "total, prev, pager, next, sizes, jumper";
- const page = { pageNum: 1, pageSize: 25, total: 0 };
- export const initPageSizes = () => pageSizes;
- export const initLayout = () => layout;
- export const initPage = () => page;
|