【发布时间】:2020-07-31 16:05:50
【问题描述】:
所以我遇到了这个问题,我的代码被吐出为字符串而不是我试图实现的 html。我的问题是如何在吐出之前将其转换为 innerHTML?如果我将它推到数组中,甚至可以做到这一点吗?我的目标是让它像“待办事项列表应用程序”,它有多个输入,将每个值吐到每一行。
class Forma extends React.Component {
constructor(){
super()
this.state ={
name: '',
birth: '',
age: '',
items: []
}
this.handleInputChange = this.handleInputChange.bind(this)
this.submitItem = this.submitItem.bind(this)
}
handleInputChange(event){
let name = event.target.name
let birth = event.target.birth
let age = event.target.age
let value = event.target.value
this.setState({ [name] : value, [birth] : value, [age] : value})
}
submitItem (){
let items = this.state.items
let item = this.state.name
let birth =this.state.birth
let age = this.state.age
let i = "<th>"
let z = "</th>"
let all =i + item + z + i + birth + z + i + age +z
items.push(all)
this.setState({ items: items})
}
render(){
return (
<div className="App">
<h1>To do List</h1>
<input type="text" name="name" onChange={this.handleInputChange}></input>
<input type="text" name="birth" onChange={this.handleInputChange}></input>
<input type="text" name="age" onChange={this.handleInputChange}></input>
<button onClick={this.submitItem}>Submit</button>
{this.state.items.map((all) => {
return(
<tr>{all}<button type="submit" className="delete">Delete</button></tr>
);
})}
</div>
);
}
}
【问题讨论】:
-
顺便说一句,作为建议,您应该始终编写实际的变量名称。这些小的一个字母变量使任何人都很难处理正在发生的事情,如果您使它们具有表现力,它可以帮助您更快地识别错误。
标签: javascript reactjs innerhtml