LOV组件
01. 属性说明
参数 | 说明 | 类型 | 默认值 | 必输 |
---|---|---|---|---|
code | 值集编码 | string | '' | 是 |
originTenantId | 值集所属租户,该属性将会在查询值集的接口上映射名为tenantId 的查询条件 |
number | 无 | 否 |
textField | 映射显示字段 | string | 无 | 否 |
textValue | 显示值 | string | '' | 否 |
lovOptions | 自定义lov组件的显示字段名(displayField),值字段名(valueField) | object | 无 | 否 |
allowClear | 是否显示清除按钮 | boolean | true | 否 |
isButton | 是否以按钮形式展现 | boolean | false | 否 |
isInput | 是否同时支持文本输入 | boolean | false | 否 |
onOk | onOk | function | 否 | |
onCancel | onCancel | function | 否 | |
onClick | onClick | function | 否 | |
onClear | onClear | function | 否 | |
onChange | onChange | function | 否 |
02. 使用示例
引入LOV组件
import Lov from 'components/Lov';
<Form.Item
label={intl.get('hsdr.concPermission.model.permission.concPragramId').d('请求名称')}
>
{getFieldDecorator('concurrentId', {})(
<Lov
textField="concurrentName"
code="HSDR.CONCURRENT"
/>
)}
</Form.Item>
originTenantId 使用
<Form.Item
label={intl.get('hsdr.concPermission.model.permission.concPragramId').d('请求名称')}
>
{getFieldDecorator('concurrentId', {})(
<Lov
textField="concurrentName"
code="HSDR.CONCURRENT"
originTenantId={getCurrentOriginTenantId()}
/>
)}
</Form.Item>
接口的请求将会是:
http://hzeronb.saas.hand-china.com/hpfm/v1/lov-view/info?tenantId=0&viewCode=HCNF.ROUTE_INFORMATION
textField 使用
表单回显
<Form.Item
label={intl.get('hsdr.concPermission.model.permission.concPragramId').d('请求名称')}
>
{getFieldDecorator('concurrentId', {})(
<Lov
textField="concurrentName"
code="HSDR.CONCURRENT"
/>
)}
</Form.Item>
lov级联
<Form.Item
label={intl.get('hiam.ssoConfig.model.ssoConfig.tenantName').d('租户名称')}
>
{getFieldDecorator('tenantId', {
initialValue: tenantId,
})(
<Lov
code="HPFM.TENANT"
textValue={tenantId}
onChange={() => {
form.setFieldsValue({
companyId: undefined,
companyName: undefined,
});
}}
allowClear
/>
)}
</Form.Item>
<Form.Item
label={intl.get('hiam.ssoConfig.model.ssoConfig.companyName').d('公司名称')}
>
{getFieldDecorator('companyId', {
initialValue: companyId,
})(
<Lov
textValue={companyName}
textField='companyName'
queryParams={{
tenantId: form.getFieldValue('tenantId'),
}}
code="HPFM.COMPANY"
disabled={isNil(form.getFieldValue('tenantId'))}
allowClear
/>
)}
</Form.Item>
textField为映射显示字段,主要用于lov查询表单回显,lov级联的情况下方便自动填充。
lovOptions使用
<Form.Item
label={intl.get('hiam.ssoConfig.model.ssoConfig.tenantId').d('租户id')}
>
{getFieldDecorator('tenantId', {})(
<Lov
code="HPFM.TENANT"
lovOptions={
valueField:'tenantName', // 选择值集后实际使用字段
displayField:'tenantId' // 从模态框选取后输入框显示的字段
}
/>
)}
</Form.Item>
03. 使用说明
textField 是 LOV 获取显示值的字段名,默认会从 Form 中获取,当选中 LOV 中某条数据后,会将显示值回写到 Form 中的 textField 中. textValue 不再建议使用,改为 textField ,使用 textField 的前提是 LOV 必须在某个具体的 Form 中.
在设定isInput为true后,modal选择绑定到当前表单上面的值都是字段显示值(displayName)