Reactで複数ステップフォームを作成しようとしています。ハンドルステートを複数ステップ形式で処理する
今のところ、フォームを送信すると、コンポーネントをレンダリングして別のコンポーネントを表示するワンステップフォームがありました。
これはthis Gistにあります(インデント用の謝罪、Githubはいつもそれをねじ込むでしょう)。
私は、さまざまなNPMモジュールを試してみたのは、親コンポーネントForm.js
が
Form.js -> Step1 (Child of Form) -> Step2 (Child of Step1) -> etc?
などの各フォームのステップをレンダリングしましょう持つようにしたい場合、私は、マルチフォームフォームの状態を処理するにはどうすればよい
、しかし、彼らは一緒にやっていないか働いていないようです。
親フォームコンポーネントのすべてのステップの状態を取得する方法はありますか。そこからデータを送信できます(また、各ステップを検証してフォームを正常に送信した後に状態をリセットすることもできます)。
この
constructor(props) {
super(props);
this.state = {
phone: "",
firstname: "",
lastname: "",
disabled: false,
successIsVisible: false
}
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(name, value){
let state = this.state;
state[name] = value;
this.setState({state});
}
現在のワンステップの状態コードである例入力
<input id="lastname" className="form-control" placeholder="Your last name" onChange={this.handleChange.bind(this, 'lastname')} name="lastname" value={this.state.lastname} />
とその要点のスペース。 Githubは、タブを特定の数のスペースとしてレンダリングします。 '?ts = x'を渡すことでタブ文字に使用するスペースの数をオーバーライドできます。ここでxは使用するスペースの数です。あなたの要点は、タブのサイズが2つのスペースに設定されていると良く見えます。https://gist.github.com/Kotoriii/cecf942e2f15899a83be6686a9cae228?ts=2 –