Masalah dengan nilai lalai atau nilai dalam FormItem ANTD tidak sah
P粉265724930
P粉265724930 2023-08-22 23:51:25
0
2
474
<p>Saya cuba menggunakan kod berikut tetapi medan tidak terikat. atribut onChange berfungsi dengan baik</p> <pre class="brush:php;toolbar:false;">const { getFieldDecorator, getFieldError, isFieldTouched } = this.props.form; const NameError = isFieldTouched("Nama") && <FormItem validateStatus={NameError ? "error" : ""} help={NameError ||. {getFieldDecorator("Nama", { //initialValue: this.state.Data.Name, peraturan: [{ diperlukan: benar, mesej: "Sila masukkan nama komponen }] })( <Input className="form-control" type="text" name="Nama" defaultValue={this.state.Data.Name} onChange={this.onChange} /> )} </FormItem></pre> <p>Adakah saya terlepas sesuatu? Saya juga menggunakan <code>input</code> dan bukannya <code>Input</code></p> <p><strong>Edit</strong> Dalam kaedah <code>componentDidMount</code> <pre class="brush:php;toolbar:false;">fetch('http://localhost:5728/Fields/get/' + this.state.Data.Id) .then(results=>{ return results.json() }) .then(data=>{ this.setState({ Data: { Id: data.field.Id, Nama: data.field.Name, Penerangan: data.field.Description, Nilai: data.field.Value } }) })</pre> <p>Saya cuba menggunakan <code>initialValue</code> tetapi itu hanya berfungsi jika nilai keadaan ditetapkan dalam kaedah <code>constructor</code> Perubahan tidak ditunjukkan semasa memanggil API. </p>
P粉265724930
P粉265724930

membalas semua(2)
P粉940538947

Anda juga boleh menggunakan cangkuk

import { Form } from "antd"

const [form] = Form.useForm();

 fetch('api')
      .then(results=>{
        return results.json()
      })
      .then(data=>{
        form.setFieldsValue({
           sample: data.dataYouWant
        });


<Form form = {form}>
   <Form.Item name = "sample">
       <Input />
   </Form.Item>
</Form>
P粉078945182

Dokumentasi menyatakan:

Apabila data dimuatkan dari bahagian belakang, hubungi sahaja setFieldsValue:

fetch('http://localhost:5728/Fields/get/' + this.state.Data.Id)
      .then(results=>{
        return results.json()
      })
      .then(data=>{

        this.props.form.setFieldsValue({
                Id: data.field.Id,
                Name: data.field.Name,
                Description: data.field.Description,
                Value: data.field.Value
          })
      })

Atau lebih ringkas, jika data.field bahagian belakang betul-betul sepadan dengan nama medan:

this.props.form.setFieldsValue(data.field)
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan