【发布时间】:2017-04-12 16:53:02
【问题描述】:
我正在尝试使用 appendInput() 函数将动态键/值对添加到初始对象。
初始对象:
constructor(props) {
super(props);
this.state = {
milestonesValues : {
milestone0: "dssdsad",
milestone1: "",
milestone2: "",
milestone3: "",
}
};
}
渲染方法:
render(){
return(
<div>
<main className="content">
<form onSubmit={this.onSubmit}>
<div className="input-wrap">
<label>{'What are the basic steps?'}
{Object.keys(this.state.milestonesValues).map( (milestone, index) =>
<input
key={milestone}
placeholder={`${index+1}.` }
type="text"
name={milestone}
value={this.state.milestonesValues[milestone]}
onChange={this.handleInputChange} />
)}
</label>
<button onClick={ () => this.appendInput() }>
{"+ ADD MILESTONE"}
</button>
</div>
</form>
</main>
</div>
);
appendInput() 函数:
appendInput() {
var objectSize = Object.keys(this.state.milestonesValues).length;
var newInput = `milestone${objectSize}: "",`;
console.log(newInput);
this.setState({
milestonesValues: this.state.milestonesValues.concat([newInput])
});
}
我只是无法将新生成的键/值添加到该初始对象。
有人可以帮忙吗?
【问题讨论】:
标签: javascript reactjs object