3.1.1
рдореИрдХ (рдХреНрд░реЛрдо 63.0.3239.84 (64) рдФрд░ 3.1.1)
https://ant.design/components/form-cn/#components -form-demo-dynamic-form-item
рдбрд╛рдпрдирд╛рдорд┐рдХ рдлреЙрд░реНрдо рдЖрдЗрдЯрдо рд╕реЗрдЯ рд╡реИрд▓реНрдпреВ,
`const formItems = keys.map((k, index) => {
рд╡рд╛рдкрд╕реА (
рдЖрд╡рд╢реНрдпрдХ = {рд╕рдЪ}
рдХреБрдВрдЬреА = {рдХреЗ}
>
{getFieldDecorator(minAmount-${k} , {
рдирд┐рдпрдо: [{
рдЖрд╡рд╢реНрдпрдХ: рд╕рдЪ,
рд╕рдВрджреЗрд╢: "шп╖ш╛УхЕехдзф║О0чЪДхА╝",
}],
})(
)}
{ (keys.length > 1) ? (
<Button
type="danger"
disabled={keys.length === 1}
onClick={() => this.remove(k)}
>хИащЩд</Button>
) : null}
</FormItem>
);
});
Example this.props.form.setFields(
{
"minAmount-1" : {value : 111}
}
);
ред
рд╕рд╛рдорд╛рдиреНрдп рдлрд╝реАрд▓реНрдб рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рди рд╕реЗрдЯ рдХрд░реЗрдВред
рдЖрдк рдЗрд╕реЗ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
рдкрдВрдХреНрддрд┐ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдбрд╛рдпрдирд╛рдорд┐рдХ рдлреЙрд░реНрдо рдЖрдЗрдЯрдо рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВред
рд╣реИрд▓реЛ @kerrzhaoред рдХреГрдкрдпрд╛ рдЗрд╕ рд▓рд┐рдВрдХ https://u.ant.design/codesandbox-repro рдХреЛ рдлреЛрд░реНрдХ рдХрд░рдХреЗ рдСрдирд▓рд╛рдЗрди рдкреБрдирд░реБрддреНрдкрд╛рджрди рдкреНрд░рджрд╛рди Need Reproduce
рджреНрд╡рд╛рд░рд╛ рд▓реЗрдмрд▓ рдХреА рдЧрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рдмрдВрдж рдХрд░ рджреА рдЬрд╛рдПрдВрдЧреАред
@yesmeck https://codesandbox.io/s/3rxj27q281 рдпрд╣рд╛рдВ рдХреЛрдб рдбреЗрдореЛ рд╣реИред рдЕрдкреЗрдХреНрд╖рд┐рдд рдкреНрд░рднрд╛рд╡ рдбрд╛рдпрдиреЗрдорд┐рдХ рдмреЙрдХреНрд╕ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реИред
рдЪреЗрддрд╛рд╡рдиреА рдХреА рддрд░рд╣, рдЖрдк рдкрдВрдЬреАрдХрд░рдг рд╕реЗ рдкрд╣рд▓реЗ рдлрд╝реАрд▓реНрдб рдХрд╛ рдорд╛рди рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЬрдм рдЖрдк рдХреЙрдореНрдкреЛрдиреЗрдВрдЯрдбрд┐рдбрдорд╛рдЙрдВрдЯ рдореЗрдВ names_2
рдХрд╛ рдорд╛рди рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЕрднреА рддрдХ рдкрдВрдЬреАрдХреГрдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рд╣реИрд▓реЛ @kerrzhao , рд╣рдо рдмрдЧ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдпрд╛ рдЪреАрдВрдЯреА рдбрд┐рдЬрд╛рдЗрди рдХреА рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рд╕рдВрдмрдВрдзреА рдкреНрд░рд╢реНрди рди рдкреВрдЫреЗрдВ ред рдЖрдк рд╕реНрдЯреИрдХ рдУрд╡рд░рдлрд╝реНрд▓реЛ рдпрд╛ рд╕реЗрдЧрдореЗрдВрдЯ рдлреЙрд▓реНрдЯ рдкрд░ рдкреНрд░рд╢реНрди рдкреВрдЫрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдЕрдкрдиреЗ рдкреНрд░рд╢реНрди рдкрд░ рдЯреИрдЧ antd
рдФрд░ react
рдХрд░реЗрдВред
setFieldsValue
рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ form
рдкрдВрдЬреАрдХреГрдд рдирд╣реАрдВ рд╣реИ, @kerrzhao setFields
рдЖрдЬрдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП
рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ред рдХреГрдкрдпрд╛ рдЕрдВрдЧреНрд░реЗрдЬрд╝реА рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВред
@naefl рдЬреИрд╕рд╛ рдХрд┐ рдЪреЗрддрд╛рд╡рдиреА рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдЖрдк рдлрд╝реАрд▓реНрдб рдкрдВрдЬреАрдХреГрдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ setFieldsValue
рдХреЙрд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
@naefl рдЗрд╕рдХреЗ рдмрдЬрд╛рдп 'рд╕реЗрдЯрдлрд┐рд▓реНрдбреНрд╕' рдЖрдЬрд╝рдорд╛рдПрдВ
@naefl рд╣рдо рдЗрд╕рдХреЗ рдмрдЬрд╛рдп initialValue
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдлрд╝реАрд▓реНрдб рдорд╛рди рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: https://codesandbox.io/s/3rxj27q281
рдпрд╣ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реЛрдирд╛:
рдХрднреА-рдХрднреА рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд╣рд▓реА рдмрд╛рд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдкрд░ рдХреЛрдИ рдШрдЯрдХ рдорд╛рдЙрдВрдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдЬреАрдм рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдлреЙрд░реНрдо рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╣реА setFieldValues
рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
class Login extends React.Component {
componentDidMount() {
this.getStoredSettings()
}
getStoredSettings = async () => {
const canLogin = await getItem('token')
if (!canLogin) {
const creds = await getItem('credentials')
if (creds) {
// update values with creds
const { email, password } = JSON.parse(creds)
try {
this.props.form.setFieldsValue({
email,
password,
})
} catch (error) {
console.log(error)
}
}
}
}
render() {
const { form, initialValues } = this.props
const { email, password } = initialValues
const { getFieldProps } = form
return (
<Form>
<InputItem
{...getFieldProps('email', {
initialValue: email,
})}
/>
<InputItem
{...getFieldProps('password', {
initialValue: password,
})}
type='password'
/>
</Form>
)
}
}
const LoginForm = createForm()(Login)
const mapState = (state) => {
return {
initialValues: {
email: __DEV__ ? DEFAULT_EMAIL : '',
password: __DEV__ ? DEFAULT_PASSWORD : '',
},
}
}
export default connect(mapState)(LoginForm)
@gitdust рдЦреБрд░рд╛рдХ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
@fenghuizhang рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
рдРрд╕рд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ?
const formData = {
name: data.name,
title: data.title,
desc: data.desc,
link: data.link,
};
this.props.form.setFieldsValue(formData);
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдЦреЗрддреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдирд╣реАрдВ рд╣реИ
рдпрджрд┐ рдЖрдкрдХреЗ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА!
рдореБрдЭреЗ рдпрд╣ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ:
рдЖрдк рдЗрд╕реЗ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
рд▓реЗрдХрд┐рди рдХрд╛рд░рдг рдЕрдВрдд рдореЗрдВ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛
рдзрдиреНрдпрд╡рд╛рдж @yanzishang , рдЖрдкрдХреЗ рдЙрддреНрддрд░ рдиреЗ рдореБрдЭреЗ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдорджрдж рдХреАред
рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЗрдмрд▓ рдЧрд▓рдд рд╣реИрдВ
рдпрджрд┐ рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЪреЗрддрд╛рд╡рдиреА рднреАред
рдЗрд╕рд▓рд┐рдП, рдкрд╣рд▓реЗ рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдХрд░реЗрдВ, рдЬреИрд╕реЗ: form.getFieldDecorator('fieldName', { initialValue: {} })
рд░реЗрдВрдбрд░ () рдореЗрдВ,
рдлрд┐рд░ рдЕрдкрдиреА рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рдлрд╝реАрд▓реНрдбрд╡реИрд▓реНрдпреВ рд╕реЗрдЯ рдХрд░реЗрдВред
рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ ~
рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдлрд╝реАрд▓реНрдб рд╡реИрд▓реНрдпреВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдЬреИрд╕реЗ @kerrzhao рдиреЗ рдХрд╣рд╛:
Example this.props.form.setFields( { "minAmount-1" : {value : 111} } ); .
рдореИрджрд╛рди рддрдп рд╣реИред рдЕрдЧрд░ рдореИрдВ рдлрд╝реАрд▓реНрдб рдХрд░рддрд╛ рд╣реВрдВред hasOwnProperty (myField) рдпрд╣ рд╕рдЪ рд╣реЛ рд░рд╣рд╛ рд╣реИред
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐, рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдорд╛рди рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ
@ guixuefeng101 рдореЗрд░реЗ рд╕рд╛рде рднреА рдРрд╕рд╛ рд╣реА рд╣реИ
рддреНрд░реБрдЯрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП:
"рдЖрдк рдорд╛рди рд╕реЗ рд╕рдВрдмрджреНрдз рдлрд╝реАрд▓реНрдб рдХреЛ рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред"
"рдкрдВрдЬреАрдХрд░рдг" рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рд╕рдорд╕реНрдпрд╛ рдЪреАрдВрдЯреА рдврд╛рдВрдЪреЗ рдХреЗ рд▓рд┐рдП рдЖрдВрддрд░рд┐рдХ рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рдирдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЕрд░реНрде рдирд╣реАрдВ рд╣реИред
@joeheyming рдЖрдк рдЙрд╕ рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВред
@ afc163 рдХреЛрдИ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрджреЗрд╢ рдХрд╣рд╛рдБ рд╣реИ? рдореБрдЭреЗ рдпрд╣ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ
рдЗрд╕рдХреЗ рдмрдЬрд╛рдп getFieldDecorator рдХреЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╡реИрд▓реНрдпреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ setFields рдпрд╛ setFieldsValue
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди @gitdust рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдиреЗ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╣рд▓ рдХрд░ рджрд┐рдпрд╛ред
рдореБрдЭреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди рдЧрддрд┐рд╢реАрд▓ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди рдХреЗ рд╕рд╛рде рдХрдИ рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рд╣реИрдВред
рдореИрдВрдиреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди рдкреНрд░реЛрдк рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╡рд┐рдзрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ form.setFields рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдзрдиреНрдпрд╡рд╛рдж!
рдЖрдк рдкрд╣рд▓реЗ рдлреЙрд░реНрдо рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдкреНрд░рдкрддреНрд░ рдШрдЯрдХ рдореЗрдВ рдХреЗрд╡рд▓ A рдФрд░ B рд╣реИрдВ, рдФрд░ рдЖрдкрдХреЗ рд╕реЗрдЯ рдХреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд C рд╣реИ
рдпрджрд┐ рдЖрдкрдХреЗ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА!
рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдмрдврд╝рд┐рдпрд╛!
рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдХреИрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ?
@kerrzhao рдореИрдВ setFieldsValue
рдХреЛ setState
рдбрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЪреЗрддрд╛рд╡рдиреА рдЧрд╛рдпрдм рд╣реЛ рдЧрдИ рд╣реИ рдФрд░ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ рд╣реИ;
рдХреЛрдб рдиреАрдЪреЗ рд╣реИ:
this.setState({
addOptionsList: newAddOptionsList
},
() => {
setFieldsValue({
[
рд╕рдВрд╢реЛрдзрд┐рдд рд╕рд╛рдордЧреНрд░реА${value} ]: ''
});
});
рдпрджрд┐ рдЖрдкрдХреЗ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА!
рдЫрд╣ рдЫрд╣ рдЫрд╣
рдХреЛрд╢рд┐рд╢ form.getFieldDecorator('fieldName', { initialValue: your_value })
рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдлрд╝реАрд▓реНрдб рдХреЛ v-decorator
рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ:
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="description" hasFeedback>
<a-textarea v-decorator="['description']"/>
</a-form-item>
рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрджреЗрд╢ рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдкрдХреЗ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА!
рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛
рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдереА рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдирд╛рдо рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдорд╛рди 'astermihagauvlent' рдкрд░ рд╕реЗрдЯ рд╣реИ, рдореИрдВрдиреЗ рдЗрд╕реЗ рдлрд╝реАрд▓реНрдб рдирд╛рдо рдХреЛ 'рдХреБрдВрдЬреА' рдореЗрдВ рдмрджрд▓рдХрд░ рддрдп рдХрд┐рдпрд╛ рд╣реИ
рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╡реИрд▓реНрдпреВ рдкрд╣рд▓реЗ рд░реЗрдВрдбрд░ рдХреЗ рдмрд╛рдж рдмрджрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдбрд┐рдлреЙрд▓реНрдЯрд╡реИрд▓реНрдпреВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ setFieldValue рдпрд╛ mapPropsToFields рдЖрдЬрд╝рдорд╛рдПрдВред
рдЙрджрд╛рд╣рд░рдг:
if(this.props.form.getFieldValue('version')){
this.props.form.setFieldsValue({
рд╕рдВрд╕реНрдХрд░рдг: рдЬрд╛рдирдХрд╛рд░реА.рд╕рдВрд╕реНрдХрд░рдг,
});
}
рдЖрдк рдПрдХ рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдирд╣реАрдВ рд╣реИред : )
рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЗрдмрд▓ рдЧрд▓рдд рд╣реИрдВ
рд╕рдЪреНрдЪрд╛рдИ
@ShMcK рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж
getFieldsValue рдареАрдХ рд╣реИред
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдлрд╝реАрд▓реНрдб setFieldsValue
рд╕реЗ рдкрд╣рд▓реЗ рдкрдВрдЬреАрдХреГрдд рд╣реИ
```рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ
рдХреЙрдиреНрд╕реНрдЯ {рдлреЙрд░реНрдо} = рдпрд╣ред рдкреНрд░реЙрдкреНрд╕;
рдЕрдЧрд░ (рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд!== form.getFieldValue('foo')) {
form.setFieldsValue({
рдлреВ: 'рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб',
});
}
````
рдпрджрд┐ рдЖрдкрдХреЗ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА!
рдзрдиреНрдпрд╡рд╛рдж
рдореЗрд░реЗ рд▓рд┐рдП, рд╕рдорд╕реНрдпрд╛ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ setFieldsValue рдХреЛ рдЙрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рдереА рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдлрд╝реАрд▓реНрдб рдереЗ, рдЬрдмрдХрд┐ рдореЗрд░реЗ рдлреЙрд░реНрдо рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдлрд╝реАрд▓реНрдб рдерд╛ред
рдпрд╣рд╛рдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
const dataIWantToFillFormWith = { "test1": "dummy data", "test2": "more dummy data" }
Object.keys(form.getFieldsValue()).forEach(key => {
const obj = {};
obj[key] = dataIWantToFillFormWith[key] || null;
setFieldsValue(obj)
рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдпрд╣ рдХрд┐рд╕реА рднреА рдлрд╝реАрд▓реНрдб рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджреЗрдЧрд╛ рдЬреЛ рдкреНрд░рдкрддреНрд░ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред
рдЗрд╕рдХреЗ рдмрдЬрд╛рдп getFieldDecorator рдХреЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╡реИрд▓реНрдпреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ setFields рдпрд╛ setFieldsValue
рдЬрдм рдЖрдк getFieldDecorator рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╡реИрд▓реНрдпреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рд░реАрд╕реЗрдЯрдлрд┐рд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдореЗрд░реЗ рд▓рд┐рдП, рд╕рдорд╕реНрдпрд╛ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ setFieldsValue рдХреЛ рдЙрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рдереА рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдлрд╝реАрд▓реНрдб рдереЗ, рдЬрдмрдХрд┐ рдореЗрд░реЗ рдлреЙрд░реНрдо рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдлрд╝реАрд▓реНрдб рдерд╛ред
рдпрд╣рд╛рдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
const dataIWantToFillFormWith = { "test1": "dummy data", "test2": "more dummy data" } Object.keys(form.getFieldsValue()).forEach(key => { const obj = {}; obj[key] = dataIWantToFillFormWith[key] || null; setFieldsValue(obj)
рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдпрд╣ рдХрд┐рд╕реА рднреА рдлрд╝реАрд▓реНрдб рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджреЗрдЧрд╛ рдЬреЛ рдкреНрд░рдкрддреНрд░ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред
рдмреНрд░рд╣реНрдорд╛рдВрдб рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдпрд╣ рдПрдХрдорд╛рддреНрд░ рд╕рдорд╛рдзрд╛рди рдерд╛ рдЬрд┐рд╕рдиреЗ рдкреНрд░рднрд╛рд╡ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛
рдпрджрд┐ рдЖрдкрдХреЗ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА!
рдореБрдЭреЗ рддреБрдорд╕реЗ рдкреНрдпрд╛рд░ рд╣реИ
рдореЗрд░реЗ рд▓рд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ рдХрдИ рд░реВрдк рд╣реИрдВред рдореБрдЭреЗ рдорд┐рд▓реА рддреНрд░реБрдЯрд┐ рд╕рд┐рд░реНрдл рдЧрд▓рдд рдлреЙрд░реНрдо рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рдХрд╛рд░рдг рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдлрд╝реАрд▓реНрдб рдкрдВрдЬреАрдХреГрдд рд╣реЛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди setFieldsValue
рдорд╛рдзреНрдпрдо рд╕реЗ рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рджреБрдЦ рдХреА рдмрд╛рдд рд╣реИ|_|
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдпрджрд┐ рдЖрдкрдХреЗ рдлрд╝реЙрд░реНрдо рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдлрд╝реАрд▓реНрдб рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА!