私はReact Bootstrap table
を使用しています。私は、リスト内の項目を追加すると、私はそのようなデータを保存するためにlocal storage
を使用します。Re:データを編集してローカルストレージに保存します
componentDidUpdate() {
localStorage.setItem('items', JSON.stringify(this.state.items))
}
さて、私はcellEditとブートストラップのテーブルのセルにデータを編集したい:
<BootstrapTable data={this.props.items} cellEdit={this.cellEdit}>
<TableHeaderColumn isKey='true' dataField='id'>Id</TableHeaderColumn>
<TableHeaderColumn dataField='content' dataSort={true} >Titre</TableHeaderColumn>
<TableHeaderColumn dataField='reference'>Réference</TableHeaderColumn>
<TableHeaderColumn dataField='docLibelle' >Libellé du document </TableHeaderColumn>
<TableHeaderColumn dataField='filePath' dataFormat={this.linkFormatter} >Url du document </TableHeaderColumn>
</BootstrapTable>
cellEdit = {
mode: 'click', // click cell to edit
afterSaveCell: this.afterSaveCell
};
afterSaveCell(row, cellName, cellValue, newText) {
localStorage.setItem("items", JSON.stringify(this.state.itemsUpdate));
}
ので、最初に私はエラーがあります:
this is undefined.
次に、私はそれがうまくいかない解決策であるかどうかわかりません。 こんにちは、ありがとう。
がcellEdit = {
mode: 'click', // click cell to edit
afterSaveCell: this.afterSaveCell.bind(this)
};
概念は、ときに動作します
私はこれを修正
cellEdit={this.cellEdit.bind(this)}