Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 开关控制权限列表_Reactjs - Fatal编程技术网

Reactjs 开关控制权限列表

Reactjs 开关控制权限列表,reactjs,Reactjs,我试图使用常规权限列表控制某些交换机,并将其与用户通过Api调用拥有的权限交叉,但如果该权限为true,则无法更新状态。我能做什么 function PermisosList({ permit = {}, permits = [], user }) { const [state, setState] = useState(false, { checkedA: false, checkedB: false, }); const handleChangeCheck =

我试图使用常规权限列表控制某些交换机,并将其与用户通过Api调用拥有的权限交叉,但如果该权限为true,则无法更新状态。我能做什么

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'
/>
)
}