2017-01-02 11 views
0

反応を使って配列内のアイテムを更新する方法を教えてください。私はaddボタンを使って動的リストを作成します。生成されたアイテムには、2つのボタンupdatedeleteがあります。 更新ボタンをクリックすると、追加ボタンのテキストがupdateに変更され、入力フィールドに選択した値が入力されます。更新ボタンをクリックすると、選択したアイテムを更新します。反応を使って配列内のアイテムを更新するには?

は、ここに私のコード あなたが更新された項目名とIndexOfの減速で更新する場合にアイテムを渡す必要がありhttps://plnkr.co/edit/bpSGPLLoDZcofV4DYxPe?p=preview

addName() { 
    if (this.state.username !== '') { 
     if (this.state.btnText === 'add') { 
      this.props.add(this.state.username) 
     } else if (this.state.btnText === 'update') { 
      this.props.updateItem(this.state.username) 
     } 
     this.setState({ 
      username: '', 
      btnText: 'add' 
     }) 
    } 
} 
delete(item) { 
    this.props.deleteItem(item) 
} 
    update(item){ 
    this.setState({ 
     username : item, 
     btnText:'update' 
    }) 
    } 
+0

あなたのコードをチェックしてください –

+0

入力値を記入してくださいと 'あなたが提供plunkrリンクにハズレのないそこに更新ボタン – user5711656

+0

を参照してください.then add'ボタンをクリックしてください。 –

答えて

0

です。次に、スプ​​ライスを使用して新しい値を更新します。

plunkrが更新されました。任意の更新ボタンが含まれていませんplunkrで、それはhere

case 'UPDATE_ITEM': 
     let newList = state.slice() 
     newList.splice(action.payload.index, 1, action.payload.item) 
     return newList; 
関連する問題