import React from 'react'; import { Input } from 'kts-xui'; import { Form } from 'kts-components-antd-x3'; import { decorator } from 'grey-react-box'; import { FormComponentProps } from 'kts-components-antd-x3/lib/form'; import Invoice from '../../..'; import './index.less'; export interface IBuyerProps { /** 默认备注 */ defaultRemark?: string; /** 默认开票人 */ defaultIssuer?: string; } export default decorator(Form.create())((props) => { const { form } = props; const { getFieldDecorator } = form; /** 控制器 */ const controller = Invoice.useInvoiceController(); const model = controller.useMemo(s => s.model, []); /** 禁用字段 */ const disableds = controller.useMemo(s => s.stakeholder.disableds || [], []); /** 启用字段 */ const enables = controller.useMemo(s => s.stakeholder.enables || [], []); const readOnly = React.useMemo(() => model === 'readOnly', [model]); const isReadOnly = React.useCallback(field => disableds.indexOf(field) >= 0, [disableds]) const isEnables = React.useCallback(field => enables.indexOf(field) >= 0, [enables]) // 注册 form controller.useForm('sign', form); if (readOnly) { return (
{getFieldDecorator('remarks', { initialValue: props.defaultRemark })( isEnables('remarks') ? : )}
{getFieldDecorator('drawer', { initialValue: props.defaultRemark })()}
); } else { return (
备注信息
{getFieldDecorator('remarks', { initialValue: props.defaultRemark })()} {getFieldDecorator('drawer', { initialValue: props.defaultIssuer })()}
); } }); class MyDiv extends React.Component<{ value?: string, style?: React.CSSProperties }> { render(): React.ReactNode { return (
{this.props.value}
) } }