React.jsで, ユーザが入力した数字(var1,var2)を加算して結果値(result)を表示するプログラムを作成したいのですが, 下記コードを実装すると, ページ上ではresult: NaN
と表示され, 入力内容が反映されません.
原因を教えていただきたいです. Reactのversionは16.4.1です.
javascript
1import React, { Component } from 'react'; 2 3class InputForm extends Component { 4 constructor(props) { 5 super(props); 6 this.state = {var1: 0, var2: 0, result: 0}; 7 this.handleChange = this.handleChange.bind(this); 8 } 9 10 handleChange(event) { 11 this.setState({ 12 var1: event.target.var1, 13 var2: event.target.var2, 14 result: event.target.var1 + event.target.var2 15 }); 16 } 17 18 render() { 19 return ( 20 <div> 21 <div> 22 var1:<input type="text" value={this.state.var1} onChange={this.handleChange} /> 23 </div> 24 <div> 25 var2:<input type="text" value={this.state.var2} onChange={this.handleChange} /> 26 </div> 27 <div> 28 result: {this.state.result} 29 </div> 30 </div> 31 ); 32 } 33} 34 35export default InputForm;
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。