index.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import Setting from "./setting";
  2. // 初始化模板
  3. export const initColumns = (arr) => {
  4. return arr.map((element) => ({
  5. ...element,
  6. ...Setting(element.type),
  7. }));
  8. };
  9. // 初始化参数
  10. export const initParams = (prop, key = "key", value = "value") =>
  11. Object.fromEntries(prop.map((item) => [item[key], item[value]]));
  12. // 初始化字典
  13. export const initDicts = (prop) =>
  14. prop.filter((column) => column.referName).map((column) => column.referName);
  15. // 初始化校验
  16. export const initRules = (prop) => {
  17. const rules = {};
  18. prop
  19. .filter((column) => column.require)
  20. .forEach((column) => {
  21. const message = `${column.title}不能为空`;
  22. rules[column.key] = [
  23. { required: true, message: message, trigger: "change" },
  24. ];
  25. });
  26. return rules;
  27. };
  28. const pageSizes = [25, 50, 100];
  29. const layout = "total, prev, pager, next, sizes, jumper";
  30. const page = { pageNum: 1, pageSize: 25, total: 0 };
  31. export const initPageSizes = () => pageSizes;
  32. export const initLayout = () => layout;
  33. export const initPage = () => ({ pageNum: 1, pageSize: 25, total: 0 });