我正在嘗試將添加的待辦事項(xiàng)返回到我創(chuàng)建的列表中。我已經(jīng)使用材料 ui 庫(kù)來(lái)創(chuàng)建列表。我能夠?qū)⑿绿砑拥拇k事項(xiàng)返回到列表中,但它會(huì)再次生成整個(gè)數(shù)組,而不僅僅是添加的特定值。我已經(jīng)添加了我在 app.js 中使用的代碼,listlayout.js 是呈現(xiàn)新添加的待辦事項(xiàng)的頁(yè)面。表單還有另一個(gè)組件,我沒(méi)有添加該代碼,因?yàn)樗鼘?duì)于這個(gè)特定問(wèn)題并不重要應(yīng)用程序.jsclass App extends Component { constructor(props) { super(props); this.state = { items: [], newItem: { id: "", itemText: "" } }; this.handleInput = this.handleInput.bind(this); this.addItem = this.addItem.bind(this); } handleInput = e => { this.setState({ newItem: { id: 1 + Math.random(), itemText: e.target.value } }); }; addItem = e => { e.preventDefault(); const typedItem = this.state.newItem; if (typedItem.text !== "") { const typedItems = [...this.state.items, typedItem]; this.setState({ items: typedItems, newItem: { id: "", items: "" } }); } }; render() { return ( <div> <HeaderBar /> <InputForm newItem={this.state.newItem.itemText} addItem={this.addItem} handleInput={this.handleInput} /> <ListLayout items={this.state.items} /> </div> ); }}export default App;ListLayout.jsconst ToDoList = props => { const classes = useStyles(); const [dense] = React.useState(false); const items = props.items; function generate(element) { return items.map(value => React.cloneElement(element, { key: value }) ); } const listItems = items.map(item => { return <div key="item.id">{item.itemText}</div>; });
材質(zhì) UI 列表函數(shù)返回重復(fù)值
牛魔王的故事
2022-05-26 14:36:38