/
githubmirror
/
material-ui
Обзор
Документация
Войти
/
githubmirror
/
material-ui
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
docs/data/material/components/lists/CheckboxListSecondary.tsx
57 строк
2 KB
Siriwat K
[Checkbox][Radio][Switch] Remove deprecated inputProps and inputRef (#48059)
23 мар 2026, 09:29
Не верифицирован
23 мар 2026, 09:29
58cf9c2
Код
Авторство
О чём код?
import * as React from 'react'; import List from '@mui/material/List'; import ListItem from '@mui/material/ListItem'; import ListItemButton from '@mui/material/ListItemButton'; import ListItemText from '@mui/material/ListItemText'; import ListItemAvatar from '@mui/material/ListItemAvatar'; import Checkbox from '@mui/material/Checkbox'; import Avatar from '@mui/material/Avatar'; export default function CheckboxListSecondary() { const [checked, setChecked] = React.useState([1]); const handleToggle = (value: number) => () => { const currentIndex = checked.indexOf(value); const newChecked = [...checked]; if (currentIndex === -1) { newChecked.push(value); } else { newChecked.splice(currentIndex, 1); } setChecked(newChecked); }; return ( <List dense sx={{ width: '100%', maxWidth: 360, bgcolor: 'background.paper' }}> {[0, 1, 2, 3].map((value) => { const labelId = `checkbox-list-secondary-label-${value}`; return ( <ListItem key={value} secondaryAction={ <Checkbox edge="end" onChange={handleToggle(value)} checked={checked.includes(value)} slotProps={{ input: { 'aria-labelledby': labelId } }} /> } disablePadding > <ListItemButton> <ListItemAvatar> <Avatar alt={`Avatar n°${value + 1}`} src={`/static/images/avatar/${value + 1}.jpg`} /> </ListItemAvatar> <ListItemText id={labelId} primary={`Line item ${value + 1}`} /> </ListItemButton> </ListItem> ); })} </List> ); }