1. Bauteile1. Ein Formular muss Formularfelder enthalten. Dies können Eingabesteuerelemente, Standardformularfelder, Beschriftungen, Dropdown-Menüs, Textfelder usw. sein. Hier verweisen wir zunächst auf das gekapselte Formularfeld <Form.Item /> 2. Das von Form.create verarbeitete Formular verfügt über die Funktion, Daten automatisch zu erfassen und zu überprüfen. Wenn diese Funktion jedoch nicht benötigt wird oder das Standardverhalten die Geschäftsanforderungen nicht erfüllen kann, können Sie Form.create nicht verwenden und die Daten selbst verarbeiten. Die von Form.create() umschlossene Komponente verfügt über eine eigene this.props.form-Eigenschaft. this.props.form bietet viele APIs zur Datenverarbeitung, wie z. B. getFieldDecorator, das für die bidirektionale Bindung mit dem Formular verwendet wird. Weitere Einzelheiten finden Sie im offiziellen Antd-Dokument: Klicken Sie hier, um es anzuzeigen Zeigen Sie zuerst den Formularstil an: importiere React von „react“; importiere {Formular, Tabelle, Schaltfläche, Auswahl, Eingabe, Datumsauswahl} aus „antd“; const FormItem = Form.Item; const Option = Auswählen.Option; const {RangePicker} = DatePicker; //Holen Sie sich das Datumsbereichssteuerelement in der Datumsauswahlsteuerelementklasse UserManage extends React.Component { rendern() { const Spalten = [ { Titel: 'Ansprechpartner', dataIndex: 'Benutzername', Schlüssel: 'Benutzername', }, { Titel: 'Mobiltelefonnummer', Datenindex: "mobil", Schlüssel: 'mobile', }, { Titel: 'Firmenname', Datenindex: "Firmenname", Schlüssel: 'Firmenname', }, { Titel: „Letzte aktive Zeit“, dataIndex: 'letzteOnlineZeit', Schlüssel: 'lastOnlineTime', }, { Titel: 'Stummschaltungsstatus', Datenindex: "Status", Schlüssel: 'Status', }, ]; zurückkehren ( <div> <Formularlayout="inline" Stil={{marginBottom: '10px'}}> <FormItem label="Letzte aktive Zeit"> <RangePicker-Stil = {{Breite: '255px'}}/> </FormItem> <FormItem label="Benutzer"> <Input type="text" placeholder="Firmenname, Mobiltelefonnummer" style={{width: '155px'}}/> </FormItem> <FormItem label="Stummschaltungsstatus"> <Standardwert auswählen="Alle" style={{width: '155px'}}> <Optionswert="Alle">Alle</Option> <Optionswert="Ja">Ja</Option> <Optionswert="Nein">Nein</Option> </Auswählen> </FormItem> <Button type="primary" style={{marginTop: '3px', marginRight: '3px'}}>Abfrage</Button> <Button style={{marginTop: '3px'}}>Zurücksetzen</Button> </Form> <Tabelle Spalten={Spalten} /> </div> ) } } Standard exportieren Form.create()(Benutzerverwaltung) Columns ist die API der Table-Komponente. Columns und Column-Komponenten verwenden dieselbe API: dataIndex: Der Schlüssel, der den Spaltendaten im Datenelement entspricht und das verschachtelte Schreiben von abc unterstützt Schlüssel: Der von React benötigte Schlüssel. Wenn ein eindeutiger Datenindex festgelegt wurde, kann dieses Attribut ignoriert werden. 2. Verwenden Sie getFieldDecorator(id, options) für die Formularinteraktion1. Das Problem besteht nun darin, wie Daten für verschiedene Abfragebedingungen abgerufen werden können. Schreiben Sie daher zuerst den Code in render() neu und verwenden Sie getFieldDecorator für die bidirektionale Bindung mit dem folgenden Formular: ... machen(){ const {form} = diese.props; const {getFieldDecorator} = Formular; ... zurückkehren ( <div> <Formular bei Übermittlung={this.handleQuery} layout="inline" style={{marginBottom: '10px'}}> <FormItem label="Letzte aktive Zeit"> {getFieldDecorator('lastOnlineTime')(<RangePicker style={{width: '255px'}}/>)} </FormItem> <FormItem label="Benutzer"> {getFieldDecorator('userQueryLike')(<Input type="text" placeholder="Firmenname oder Mobiltelefonnummer" style={{width: '155px'}}/>)} </FormItem> <FormItem label="Stummschaltungsstatus"> {getFieldDecorator('status', {initialValue: "alle"})( <Stil auswählen={{width: '155px'}}> <Optionswert="0">Alle</Option> <Optionswert="1">Ja</Option> <Option value="2">Nein</Option> </Auswählen>)} </FormItem> <Button type="primary" htmlType="submit" style={{marginTop: '3px', marginRight: '3px'}}>Abfrage</Button> <Button style={{marginTop: '3px'}}>Zurücksetzen</Button> </Form> <Tabelle columns={columns} /*dataSource={(vom Modell erhaltene Daten)}*/ /> </div> ) } ...
2. Dem Formular wird oben ein onSubmit-Ereignis zugewiesen und die handleQuery-Methode wird ausgeführt, wenn das Formular übermittelt wird: ... Klasse UserManage erweitert React.Component { //Formularabfrage handleQuery = (e) => { wenn (e) e.preventDefault(); const {dispatch, form} = diese.props; form.validateFields((err, fieldsValue) => { wenn (Fehler) zurückgeben; //Wert des Zeitbereichs abrufen const rangeValue = fieldsValue['lastOnlineTime']; const userQueryLike = FelderWert['userQueryLike']; //Abfragebedingungen abrufen const values = { ...FelderWert, "letzteOnlinezeit": (Bereichswert und Bereichswert.Länge > 1) ? ([Bereichswert[0].format('JJJJ-MM-TT'), Bereichswert[1].format('JJJJ-MM-TT')]) : null, "userQueryLike": BenutzerQueryLike ? userQueryLike.trim() : BenutzerQueryLike, }; versenden({ Typ: "userManageModel/getUserList", Nutzlast: { Werte: Werte, } }); }); }; ... } ... In dieser Methode wird form.validateFields aufgerufen, um eine Reihe von Eingabefeldwerten und Fehlern zu prüfen und abzurufen. Der Eingabeparameter fieldsValue ist der aus dem FormItem des Formulars abgerufene Wert. Anschließend wird mithilfe der Form von fieldsValue['lastOnlineTime'] der Wert eines einzelnen Eingabefelds abgerufen, indem dieser mit dem zuvor geschriebenen getFieldDecorator('lastOnlineTime') zugeordnet wird. Zusammenfassend lässt sich sagen, dass Sie zur Implementierung der Formularfunktion mit Reacts Form Form.create(component) verwenden müssen, damit die umschlossene Komponente die Eigenschaft this.props.form hat, damit Sie die Methoden getFieldDecorator und validateFields des Formulars aufrufen können. Die ID in getFieldDecorator entspricht fieldsValue[''] in validateFields; und der dateIndex in columns entspricht dem Schlüsselnamen der vom Modell erhaltenen JSON-Datenzeichenfolge. Dies muss unterschieden werden. Zusätzlich zu dieser Methode gibt es zwei weitere Möglichkeiten, den Wert des Eingabefelds abzurufen und dann zu übermitteln. Sie können diesen Artikel lesen: React ruft den Wert der Eingabe ab und übermittelt ihn auf zwei Arten ZusammenfassenDamit ist dieser Artikel darüber, wie React die Form-Komponente von Ant verwendet, um Formularfunktionen zu implementieren, abgeschlossen. Weitere Informationen dazu, wie React Form-Komponenten verwendet, um Formularinhalte zu implementieren, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erläuterung des Funktionsprinzips der Ausführungsanforderung von Nginx + PHP
>>: Detaillierte Zusammenfassung von MySQL und verbindungsbezogenen Timeouts
Inhaltsverzeichnis 1. Szenario 2. Implementieren ...
MySQL-Sicherung Kaltes Backup:停止服務進行備份,即停止數據庫的寫入H...
Um es zusammenzufassen: „Nur lesen“ ist nur für Ei...
Der folgende Befehl wird häufig verwendet: chmod ...
MySQL meldet einen Fehler beim Ausführen einer Ab...
Dieser Artikel teilt den spezifischen Code des er...
Der Code demonstriert die horizontale Zusammenfüh...
Inhaltsverzeichnis Einführung Vier Merkmale von T...
Farbkontrast und Harmonie Unter kontrastierenden ...
student.xml <?xml version="1.0" enco...
1. JS-Prinzip der asynchronen Ausführung Wir wiss...
Die Rich-Text-Komponente ist eine sehr häufig ver...
Als Frontend-Entwickler komme ich an den Tücken d...
1. HTML-Code Code kopieren Der Code lautet wie fo...
Professionelles Webdesign ist komplex und zeitint...