Реагировать - передача данных в this.props.children не работает - PullRequest
0 голосов
/ 04 июня 2019

У меня есть родительский компонент, где я использую компонент EnhancedTable в качестве одного из дочерних компонентов. EnhancedTable получает детей в качестве опоры. Вы можете увидеть это в примере ниже:

<EnhancedTable headerRows={headerRows} data={eksamenssettene}>        
  {({eksamensett, handleClick, isSelected}) => (
      <TableRow
        hover
        onClick={() => handleClick(eksamensett.id)}
        role="checkbox"
        aria-checked={isSelected}
        tabIndex={-1}
        key={eksamensett.id}
        selected={isSelected}
      >
        <TableCell padding="checkbox">
          <Checkbox checked={isSelected} />
        </TableCell>
        <TableCell component="th" scope="row" padding="none">
          {eksamensett.klasse.klassekode}
        </TableCell>
        <TableCell align="left">{eksamensett.navn}</TableCell>
        <TableCell align="left">{eksamensset.fastRekkefolge ? 'Fast eksamensset' : 'Randomisert'}</TableCell>
        <TableCell align="left">{formatStringToLocalDate(eksamensset.opprettetDatoTid)}</TableCell>
        <TableCell align="left">{getElapsedTime(eksamensset.endretDatoTid)}</TableCell>
      </TableRow>
    )}
  </EnhancedTable>

В EnhancedTable я использую этих детей, чтобы передать им те реквизиты, которые он ожидает. В моем случае eksamensett, handleClick, isSelected. Я делаю это так, ниже приведена часть компонента, где я это делаю:

    <TableBody>
      {stableSort(data, getSorting(order, orderBy))
        .slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage)
        .map(n => {
          const isSelected = this.isSelected(n.id);
          return React.cloneElement(children, { eksamensett: n, isSelected,  handleClick: (id) => this.handleClick(id)});

        })}
      {emptyRows > 0 && (
        <TableRow style={{ height: 49 * emptyRows }}>
          <TableCell colSpan={6} />
        </TableRow>
      )}
    </TableBody>

Но я получаю неопределенное значение для эксаменсетта:

Строка 104: «eksamensset» не определена no-undef Строка 105: 'eksamensset' не определено no-undef Строка 106: 'eksamensset' является не определено нет-undef

Что я здесь не так делаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...