Skip to content

Commit

Permalink
fix: 修复树形表格子节点没有执行valueBuilder的bug
Browse files Browse the repository at this point in the history
  • Loading branch information
greper committed Sep 2, 2023
1 parent f4a7b15 commit 56755a5
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 3 deletions.
1 change: 1 addition & 0 deletions packages/fast-crud/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ module.exports = {
rules: {
// "comma-dangle": "off",
// "max-len": [0, 160, 2, { ignoreUrls: true }],
"@typescript-eslint/no-unused-vars": "off",
"@typescript-eslint/no-empty-interface": "off",
"@typescript-eslint/ban-ts-ignore": "off",
"@typescript-eslint/explicit-function-return-type": "off",
Expand Down
51 changes: 49 additions & 2 deletions packages/fast-crud/src/types/list/date.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@ import { daterangeFormatter, datetimerangeFormatter } from "../functions";
import { uiContext } from "../../ui";
import dayjs from "dayjs";
import weekOfYear from "dayjs/plugin/weekOfYear";
import { ColumnCompositionProps } from "../../d";
dayjs.extend(weekOfYear);

export default function () {
const ui = uiContext.get();
return {
const types: Record<string, ColumnCompositionProps> = {
datetime: {
form: {
component: {
Expand All @@ -18,6 +19,11 @@ export default function () {
column: {
width: "170px",
component: { name: "fs-date-format" }
},
valueBuilder({ row, key, value }) {
if (value != null) {
row[key] = dayjs(value);
}
}
},
date: {
Expand All @@ -32,6 +38,11 @@ export default function () {
align: "center",
width: 120,
component: { name: "fs-date-format", format: "YYYY-MM-DD" }
},
valueBuilder({ row, key, value }) {
if (value != null) {
row[key] = dayjs(value);
}
}
},
daterange: {
Expand All @@ -42,7 +53,12 @@ export default function () {
vModel: ui.datePicker.modelValue
}
},
column: { width: 210, formatter: daterangeFormatter }
column: { width: 210, formatter: daterangeFormatter },
valueBuilder({ row, key, value }) {
if (value != null && Array.isArray(value) && value.length === 2) {
row[key] = [dayjs(value[0]), dayjs(value[1])];
}
}
},
datetimerange: {
form: {
Expand All @@ -54,6 +70,11 @@ export default function () {
column: {
width: 340,
formatter: datetimerangeFormatter
},
valueBuilder({ row, key, value }) {
if (value != null && Array.isArray(value) && value.length === 2) {
row[key] = [dayjs(value[0]), dayjs(value[1])];
}
}
},
time: {
Expand All @@ -68,6 +89,11 @@ export default function () {
width: 100,
align: "center",
component: { name: "fs-date-format", format: "HH:mm:ss" }
},
valueBuilder({ row, key, value }) {
if (value != null) {
row[key] = dayjs(value);
}
}
},
month: {
Expand All @@ -82,6 +108,11 @@ export default function () {
align: "center",
width: 120,
component: { name: "fs-date-format", format: "YYYY-MM" }
},
valueBuilder({ row, key, value }) {
if (value != null) {
row[key] = dayjs(value);
}
}
},
week: {
Expand All @@ -96,6 +127,11 @@ export default function () {
align: "center",
width: 120,
component: { name: "fs-date-format", format: "YYYY-ww[周]" }
},
valueBuilder({ row, key, value }) {
if (value != null) {
row[key] = dayjs(value);
}
}
},
quarter: {
Expand All @@ -110,6 +146,11 @@ export default function () {
align: "center",
width: 120,
component: { name: "fs-date-format", format: "YYYY-[Q]Q" }
},
valueBuilder({ row, key, value }) {
if (value != null) {
row[key] = dayjs(value);
}
}
},
year: {
Expand All @@ -124,7 +165,13 @@ export default function () {
align: "center",
width: 120,
component: { name: "fs-date-format", format: "YYYY" }
},
valueBuilder({ row, key, value }) {
if (value != null) {
row[key] = dayjs(value);
}
}
}
};
return types;
}
7 changes: 6 additions & 1 deletion packages/fast-crud/src/use/use-expose.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
OpenEditContext,
SetFormDataOptions
} from "../d/expose";
import _ from "lodash-es";
import _, { isArray } from "lodash-es";
import logger from "../utils/util.log";
import { useMerge } from "../use/use-merge";
import { useUi } from "../use/use-ui";
Expand Down Expand Up @@ -241,6 +241,11 @@ export function useExpose(props: UseExposeProps): UseExposeRet {
column: col
});
});

//children
if (row.children && isArray(row.children)) {
crudExpose.doValueBuilder(row.children, columns);
}
});
logger.debug("valueBuilder success:", records);
},
Expand Down

0 comments on commit 56755a5

Please sign in to comment.