Reactjs 开关控制权限列表
我试图使用常规权限列表控制某些交换机,并将其与用户通过Api调用拥有的权限交叉,但如果该权限为true,则无法更新状态。我能做什么Reactjs 开关控制权限列表,reactjs,Reactjs,我试图使用常规权限列表控制某些交换机,并将其与用户通过Api调用拥有的权限交叉,但如果该权限为true,则无法更新状态。我能做什么 function PermisosList({ permit = {}, permits = [], user }) { const [state, setState] = useState(false, { checkedA: false, checkedB: false, }); const handleChangeCheck =
function PermisosList({ permit = {}, permits = [], user }) {
const [state, setState] = useState(false, {
checkedA: false,
checkedB: false,
});
const handleChangeCheck = (event, value) => {
setState({ ...state, [event.target.value.id]: event.target.checked });
event.preventDefault()
const items = ({ ...state, [event.target.value]: event.target.checked });
const permisoId = event.target.id
const item = Object.keys(items)
const itemsFalse = event.target.checked
};
return (
<List>
{ Array.isArray(permits) ? permits.map((value, index) => {
const labelId = `checkbox-list-secondary-label-${value.id}`;
return (
<ListItem divider
key={value.id}
>
<Grid item xs={6}>
<ListItemText primary={value.permiso} />
</Grid>
<Grid item xs={12} md={2} sm={2}>
<FormControlLabel
control={(
<Switch
id={value.id}
checked={permit[index] !== undefined && permit[index].permiso_id === value.id && permit[index].tipo_id >= 1 ? state.checkeA : state.checkeB}
onChange={(event, value) => handleChangeCheck(event, value)}
name={`check${value.id}`}
inputProps={{ 'aria-labelledby': labelId }}
value={MIN_PERMISOS.VISUALIZAR}
/>
)}
label='Visualizar'
labelPlacement='top'
/>
</Grid>
)
}
函数PermisosList({permit={},permits=[],user}){
const[state,setState]=useState(false{
查克达:错,
B:错,
});
常量handleChangeCheck=(事件、值)=>{
setState({…state[event.target.value.id]:event.target.checked});
event.preventDefault()
常量项=({…状态,[event.target.value]:event.target.checked});
const permisoId=event.target.id
const item=Object.keys(项)
const itemsFalse=event.target.checked
};
返回(
{Array.isArray(许可证)?许可证.map((值,索引)=>{
const labelId=`复选框列表辅助标签-${value.id}`;
返回(
handleChangeCheck(事件、值)}
name={`check${value.id}`}
inputProps={{'aria labelledby':labelId}
值={MIN_PERMISOS.visualizer}
/>
)}
label='visualizer'
labelPlacement='top'
/>
)
}