亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

材質 UI 列表函數返回重復值

材質 UI 列表函數返回重復值

牛魔王的故事 2022-05-26 14:36:38
我正在嘗試將添加的待辦事項返回到我創建的列表中。我已經使用材料 ui 庫來創建列表。我能夠將新添加的待辦事項返回到列表中,但它會再次生成整個數組,而不僅僅是添加的特定值。我已經添加了我在 app.js 中使用的代碼,listlayout.js 是呈現新添加的待辦事項的頁面。表單還有另一個組件,我沒有添加該代碼,因為它對于這個特定問題并不重要應用程序.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>;  });
查看完整描述

1 回答

?
料青山看我應如是

TA貢獻1772條經驗 獲得超8個贊

您的代碼中有多個注意點:

  • Material-UI ListItemText props APIprimary每個項目應該只接收一個元素。

  • 您真的不需要使用頂級 API React.cloneElement(),正常map()情況下可以正常工作。

  • 更改key="item.id"key={item.id}

  • 將Button 道具更改size="Large"size="large"



查看完整回答
反對 回復 2022-05-26
  • 1 回答
  • 0 關注
  • 133 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號