MaterialUI Custom Hover Style - PullRequest
       0

MaterialUI Custom Hover Style

0 голосов
/ 01 октября 2018

Я новичок в React, и я немного запутался в том, как переопределить классы в Material UI.Я посмотрел на примеры и попытался имитировать это, но, похоже, не получилось то, что я хочу.

По сути, при наведении на строку таблицы я хочу, чтобы она установила цвет фона, отличный от того, что она делает в данный момент.

Вот мой подход:

const styles = theme => ({
  root: {
    width: "100%",
    marginTop: theme.spacing.unit * 3
  },
  table: {
    minWidth: 1020
  },
  tableWrapper: {
    overflowX: "auto"
  },
  hover: {
    "&:hover": {
      backgroundColor: 'rgb(7, 177, 77, 0.42)'
    }
  }
});

return <TableRow hover classes={{hover: classes.hover}} role="checkbox" aria-checked={isSelected} tabIndex={-1} key={n.row_id} selected={isSelected}>
     {this.insertRow(n, isSelected, counter, checkbox)}

;

export default withStyles(styles)(EnhancedTable);

Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 01 октября 2018

Вы должны определить ключ для TableRow как className, а затем поместить свой стиль наведения на имя этого класса как объекта.

const styles = theme => ({
  ...
  tr: {
    background: "#f1f1f1",
    '&:hover': {
       background: "#f00",
    },
  },
  ...
});

return <TableRow className={props.classes.tr} ...>

В другом примере это будет что-то вроде этого:

const styles = {
  tr: {
    background: "#f1f1f1",
    '&:hover': {
      background: "#f00",
    }
  }
};

function Table(props) {
  return (
    <Table>
      <TableRow className={props.classes.tr}>
        {"table row"}
      </TableRow>
    </Table>
  );
}

export default withStyles(styles)(Table);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...