Ошибка доступа к отфильтрованным данным в React Table - PullRequest
0 голосов
/ 11 декабря 2019

Я пытаюсь использовать приведенный выше код, но я получаю сообщение об ошибке во время процесса сборки, в котором говорится, что this.selectTable равно нулю.

Кто-нибудь может мне помочь с этим? Я следовал этой логике - Доступ к отфильтрованным данным в ReactTable

  <ReactTableComponent
    ref={this.reactTable}
    className="polls-table"
    defaultPageSize={10}
    getTrProps={(_, rowInfo = {}) => {
      let { index = 0 } = rowInfo;
      return {
        style: {
          background: index % 2 ? "#fafafa" : "#FFFFFF"
        }
      };
    }}
    columns={columns}
    data={polls}
  />
  <Button
    color="primary"
    type="button"
    onClick={download(this.reactTable.current.getResolvedState())}
  >
    Download
    {/* <CSVLink data={myFunction(this.selectTable.getResolvedState())} filename="polls.csv">Export to CSV</CSVLink> */}
  </Button>
</Paper>;

1 Ответ

1 голос
/ 11 декабря 2019

Проблема в этой строке:

onClick={download(this.reactTable.current.getResolvedState())}

Теперь происходит то, что JS сразу же запускает ваш код для вычисления обработчика onClick. И только потому, что ссылка на первый запуск является нулевым, возникает ошибка. Вместо этого вы должны иметь следующее:

onClick={() => {download(this.reactTable.current.getResolvedState())}}

Вы также можете добавить условие, чтобы проверить, является ли this.reactTable.current не null

...