попытаться получить доступ к значениям строки в таблице пользовательского интерфейса материала, используемой в форме реакции - PullRequest
0 голосов
/ 09 ноября 2019

я пытаюсь получить значения для строки, когда я нажимаю кнопку обновления внутри таблицы, используя код ниже

const rows = data.projects.map(({ id, name, projectNumber, area, projectPhase, spaceTypes }) => (
<StyledTableRow key={id}>
  <StyledTableCell>{name}</StyledTableCell>
  <StyledTableCell>{id}</StyledTableCell>
  <StyledTableCell>{projectNumber}</StyledTableCell>
  <StyledTableCell>{area}</StyledTableCell>
  <StyledTableCell>{projectPhase ? projectPhase.name : '---'}</StyledTableCell>
  <StyledTableCell>
    {spaceTypes && spaceTypes.length ? spaceTypes.map(s => s.name).join(', ') : '---'}
  </StyledTableCell>
  <StyledTableCell>
    <Button data-project-id={id} onClick={handleClickUpdateProject}>
      UPDATE
    </Button>
  </StyledTableCell>
  <StyledTableCell>
    <Button data-project-id={id} onClick={handleClickDeleteProject}>
      DELETE
    </Button>
  </StyledTableCell>
 </StyledTableRow>
));

return (
  <Paper className={classes.root}>
    <Table className={classes.table}>
      <TableHead>
        <StyledTableRow>
          <StyledTableCell>Name</StyledTableCell>
          <StyledTableCell>ID</StyledTableCell>
          <StyledTableCell>Number</StyledTableCell>
          <StyledTableCell>Area</StyledTableCell>
          <StyledTableCell>Phase</StyledTableCell>
          <StyledTableCell>SpaceType</StyledTableCell>
          <StyledTableCell>
            <EditIcon />
          </StyledTableCell>
          <StyledTableCell>
            <DeleteIcon />
          </StyledTableCell>
        </StyledTableRow>
      </TableHead>
      <TableBody>{rows}</TableBody>
    </Table>
    <Button size="large" fullWidth color="primary" variant="contained" href="./NewProject">
      Add New Project
    </Button>
  </Paper>
);

, когда я пытаюсь использовать приведенный ниже код, я могу получить идентификатор проекта

 const id1 = e.target.closest('button').dataset.projectId;

но кое-как я не могу получить оставшиеся значения строк, такие как name, projectNumber ..etc. пытался с этим кодом получить projectName, но получил неопределенные значения

  const projectName1 = e.target.closest('button').dataset.projectName;

Может кто-нибудь предложить какие-либо идеи или предложения по этому вопросу. Большое спасибо заранее

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