@jay.kou/rak-ssr
Version:
A react based UI components for admin system
88 lines (87 loc) • 3.02 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
var _ = require("../../..");
var _jsxRuntime = require("react/jsx-runtime");
/**
* ProForm 内嵌 SchemaForm 的 innerRef 测试
* 验证 fieldProps 函数中 innerRef 的取值和赋值功能
*
*/var Demo = function Demo() {
var innerRef = (0, _react.useRef)();
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_.ProForm, {
innerRef: innerRef,
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_.SchemaForm, {
embed: true,
valueBaseName: "userInfo",
columns: [{
title: 'User',
dataIndex: 'userId',
valueType: 'select',
fieldProps: function fieldProps(form, innerRef) {
return {
open: true,
placement: 'topLeft',
options: [{
'data-testid': 'user1',
label: '员工1',
value: 'user1',
userCode: 'c01',
deptName: '部门A',
deptId: '1'
}, {
'data-testid': 'user2',
label: '员工2',
value: 'user2',
userCode: 'c02',
deptName: '部门B',
deptId: '2'
}],
onChange: function onChange(val, option) {
if (val) {
var _innerRef$current;
(_innerRef$current = innerRef.current) === null || _innerRef$current === void 0 || _innerRef$current.setData({
deptId: option.deptId
});
} else {
var _innerRef$current2;
(_innerRef$current2 = innerRef.current) === null || _innerRef$current2 === void 0 || _innerRef$current2.setData({
deptId: undefined
});
}
form === null || form === void 0 || form.setFieldsValue({
deptName: option.deptName
});
}
};
}
}]
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_.SchemaForm, {
embed: true,
columns: [{
valueType: 'dependency',
name: [['userInfo', 'userId']],
columns: function columns() {
return [{
title: '部门',
dataIndex: 'deptName',
fieldProps: function fieldProps(form, innerRef) {
var _innerRef$current3;
return {
disabled: ((_innerRef$current3 = innerRef.current) === null || _innerRef$current3 === void 0 ? void 0 : _innerRef$current3.data.deptId) === '1'
};
}
}];
}
}]
})
})]
})
});
};
var _default = exports.default = Demo;