ze-react-component-library
Version:
ZeroETP React Component Library
41 lines (35 loc) • 1.23 kB
JavaScript
/**
* 一个直接从Logicform转化为某一个Value的组件。比用问答更稳定。
* TODO:默认的显示format,通过property来决定
*/
import { useRequest } from "@umijs/hooks";
import { requestLogicform } from "../request";
import { formatWithProperty } from "../util";
var ZEValue = function ZEValue(_a) {
var _b;
var logicform = _a.logicform,
postProcess = _a.postProcess;
var data = useRequest(function () {
return logicform ? requestLogicform(logicform) : Promise.resolve({
result: null
});
}, {
refreshDeps: [logicform]
}).data;
if (data === null || data === void 0 ? void 0 : data.result) {
if (postProcess) {
return postProcess(data.result);
}
if (!data.logicform.groupby) {
var property = data.columnProperties[0];
return formatWithProperty(property, (_b = data.result[0]) === null || _b === void 0 ? void 0 : _b[property.name]);
} else {
var property_1 = data.columnProperties[data.logicform.groupby.length];
return data.result.map(function (row) {
return row._id + "\uFF1A" + formatWithProperty(property_1, row[property_1.name]);
}).join(",");
}
}
return "-";
};
export default ZEValue;