Я использую react-bootstrap-table
с включенным cellEdit
. Функцию обратного вызова можно использовать в react-bootstrap-table
после того, как ячейка была отредактирована. Я назвал функцию обратного вызова onAfterSaveCell
. Обновленная строка в таблице будет сохранена в переменной с именем row
. Я хотел бы отправить row
создателю действия по имени pushData
, который принимает row
в качестве входа. Мой код выглядит так.Доступ к реквизитам наружного класса
function onAfterSaveCell(row, cellName, cellValue){
this.props.pushData(row);
}
const cellEditProp = {
mode: "click",
blurToSave: true,
afterSaveCell: onAfterSaveCell
};
class Feature extends Component {
componentWillMount() {
this.props.fetchMessage();
}
render() {
if (!this.props.message) return null
return (
<div>
<BootstrapTable
data={this.props.message}
cellEdit={cellEditProp}
>
<TableHeaderColumn dataField="ccyCode" isKey={true} dataSort={true}>Valutakod</TableHeaderColumn>......
При запуске кода I произошла ошибка Uncaught TypeError: Cannot read property 'props' of undefined
. Который, я думаю, из-за этого props
не доступен за пределами class Feature
. Я попытался переместить функцию onAfterSaveCell
и cellEditProp
в class Feature
, но это дает мне ошибку компиляции. Как я могу сделать props
доступным за пределами class Feature
, или это нужно решить каким-то другим способом?