Реакционная таблица SubComponent Возвращает другую таблицу - PullRequest
1 голос
/ 05 июня 2019

У меня есть приведенная ниже таблица реакций, в которой у меня есть данные в основной таблице, и, если вы нажмете на любую стрелку, я выведу другую таблицу под этой строкой.Проблема заключается в том, какую строку вы щелкаете, мне нужно сделать запрос API, получить данные, а затем отобразить.Проблема в том, что возврат внутри this.getDetail не вносит визуальных изменений в субкомпонент.console.log(result) распечатайте правильный массив, полученный из API.Я уже настроил this.getDetail в async-await и работаю с обещанием получить данные.Как я могу это исправить, чтобы отображаемые данные отображались?Ниже подкомпонент просто возвращает 1

<ReactTable
  data={dataArray}
  columns={columns}
  defaultPageSize={5}
  noDataText="No Data"
  SubComponent={row => {
    this.getDetail(
      row.original.cusip,
      row.original.description,
      detailColumns
    ).then(function(result) {
      console.log(result);
      return (
        <ReactTable
          defaultPageSize={5}
          noDataText="No Data"
          columns={detailColumns}
          // data={Array.from(myDetail)}
          //resolveData={data => console.log(data)}
          //style={{ height: "400px" }}
          //showPagination={false}
        />
      );
    });
    return 1;
  }}
/>

1 Ответ

1 голос
/ 05 июня 2019

Вам нужно привести данные в состояние. И как только ваш запрос API ответит, установите ответ в состоянии.

Итак, ваш код ReactTable будет таким

<ReactTable
  data={this.state.dataArray}
  ...
  .../>

Таким образом, когда состояние обновляется с помощью this.setState({ dataArray: apiResonse });, ваш ReactTable будет отображаться.

...