#javascript #reactjs
#javascript #reactjs
Вопрос:
Я разрабатываю таблицу react-admin и хочу определить цвет фона строки по «активному» источнику строки — если это правда, я хочу, чтобы цвет фона строки был зеленым, в противном случае я хочу, чтобы он был красным. Я безуспешно пробовал «makeStyles» material ui (все это для меня ново).
Это моя таблица:
const myTable = (props) => {
return (
<List {...props} pagination={<PostPagination />}>
<Datagrid>
<NumberField source="id" />
<TextField source="name" />
<TextField source="category" />
<TextField source="platform" />
<NumberField source="major" />
<NumberField source="minor" />
<BooleanField source="active" label="active"/>
<DateField source="audit" />
<EditButton basePath="versions" />
<DeleteButton basePath="versions" />
</Datagrid>
</List>
)
}
Большое вам спасибо за любую помощь!
Комментарии:
1.
Datagrid
это пользовательский компонент?2. вам лучше показать какой-нибудь воспроизводимый пример, представленный в codesandbox …
Ответ №1:
Добрый день, я не совсем понял, что у вас здесь есть строки, но есть много разных вариантов, например:
<MyRow style={{background: (isActive ? 'red' : 'green')} />
<MyRow className={isActive ? classes.activeRow : null />
В первом варианте вам не нужно ничего делать со стилями, а во втором вам придется создавать стиль, например, через makeStyles.
const useStyles = makeStyles((theme) => ({
activeRow:{
backgroundColor: theme.palette.primary.main
}
}));