как справиться с загрузкой в ​​react-bootstrap-table 2

Я пытаюсь реализовать атрибут загрузки внутри response-bootstrap-table2 до того, как данные будут извлечены. однако, поскольку я новичок в этой среде, я столкнулся с некоторыми трудностями, пытаясь с ней справиться.

это код, который генерирует таблицу:

render() {
return (
  <BootstrapTable
    remote
    loading={this.props.loading}
    keyField="id"
    data={this.props.data}
    columns={this.state.stationColumns}
    pagination={paginationFactory()}
    overlay={overlayFactory({
      spinner: true,
      background: "rgba(192,192,192,0.3)"
    })}
  />
);}

как показано выше, столбцы фиксируются и инициируются в конструкторе. атрибут data и loading заполняется родительским компонентом через реквизиты, которые извлекаются.

<StationTable key="1" loading={(this.props.stationData.length >0)?false:true} data={this.props.stationData} />

после реализации этого он показал ошибку

поймал TypeError: не удалось выполнить getComputedStyle в Window: параметр 1 не относится к типу Element.

Я заметил, что если для атрибута загрузки установлено значение false, он работал нормально, но если он стал динамическим, он показывал эту ошибку.

Итак, как мне правильно реализовать атрибут загрузки динамически?

Заранее спасибо.


person Tawfeeq    schedule 03.09.2018    source источник
comment
Какую версию ты используешь?   -  person Ali Torki    schedule 03.09.2018
comment
response-bootstrap-table-next: ^ 1.1.3 response-bootstrap-table2-overlay: ^ 1.0.0 реактивный-маршрутизатор-дом: ^ 4.3.1   -  person Tawfeeq    schedule 03.09.2018
comment
реагировать-дом: ^ 16.4.2   -  person Tawfeeq    schedule 03.09.2018
comment
бутстрап: ^ 3.3.7   -  person Tawfeeq    schedule 03.09.2018


Ответы (1)


Поскольку у меня есть опыт использования этого компонента таблицы, у вас есть право, но чтобы убедиться, что он работает, зарегистрируйте this.props.loading в прототипе рендеринга, потому что я думаю, что он не определен (нормальное событие при использовании реагировать ^ _ ^). Или попробуйте определить defaultProps и propTypes следующим образом:

static defaultProps = {
  loading: true
}
person Ali Torki    schedule 03.09.2018
comment
Я просто добавил журнал сразу после render (), и он показал, что реквизитам загрузки было присвоено значение true до того, как из-за ошибки - person Tawfeeq; 03.09.2018
comment
render () {console.log (загрузка, this.props.loading); return (‹BootstrapTable - person Tawfeeq; 03.09.2018
comment
Удалите опцию pagination и попробуйте. Если проблема будет устранена! чтобы убедиться, что проблема связана с этой опорой, и вы должны назначить параметры paginationFactory, чтобы решить эту проблему. - person Ali Torki; 03.09.2018
comment
удалить пагинацию ничего не сделал. но я заметил, что проблема началась тогда и только тогда, когда данные пусты И для атрибута загрузки установлено значение true. если атрибут загрузки удален или установлен на false, все работает нормально, даже если данных не было. - person Tawfeeq; 03.09.2018