2017-12-27 3 views
0

Ich möchte ONE Route Pfad für Formular hinzufügen und bearbeiten erstellen. Das ist möglich? Wenn ja wie. Wenn nein, lassen Sie mich bitte wissen, was die beste Vorgehensweise ist. Ich muss Route definieren ähnlich wie folgt aus:Reagieren Sie eine Definition Route Pfad zum Bearbeiten und Hinzufügen von Formular

< Strecke path = "/ edituser /: id" -Komponente = {editUser} />

< Strecke path = "/ edituser" -Komponente = {editUser} />

+0

Ich fand Lösungen, wenn Sie einen Router definieren müssen Sie hinzufügen "?" nach Parametern, also Beispiel:

Antwort

1

Wenn Sie die react-router-Dokumentation lesen, werden Sie sehen, dass Sie Nullable Params an den Router übergeben können.

es bedeutet, dass Sie nach einem Parameter suchen können, dann wenn es null ist, dann ist es eine Situation hinzufügen und wenn es nicht eine Bearbeitungssituation ist.

in Ihrem Fall sollten Sie Sie Route wie folgt definieren:

<Route path="/edituser/:id?" component={EditUser} /> 

das ist die ID NULL-Werte zulässt und übergeben werden kann oder nicht passieren.

und dann in die constructor oder ComponentDidMount es wie folgt überprüfen:

if (typeof this.props.match.params.id == 'undefined') 
    //Add 
else 
    //Edit 

Viel Glück.

Verwandte Themen