在React Mui菜单项中设置所选属性不起作用

时间:2019-07-15 11:39:22

标签: javascript reactjs material-ui

我正在尝试使用react mui menu item设置选定的道具。我有一个多重选择菜单列表,其中有一个allValues字段,单击该字段可切换所有菜单项的选择。那部分工作正常。代码如下:

        <Select
          multiple
          value={selectedValues.map(klasse => klasse.id)}
          onChange={(event) => handleChange(event.target.value, onChange, idToValues)}
          input={<Input id="select-multiple-chip"/>}
          classes={{root: classes.select}}
          renderValue={selectedIds => (
            <div className={classes.chips}>
             {selectedIds.map(classId => (
               <Chip
                 key={classId}
                 label={idToValues[classId] && idToValues[classId].classCode}
                 className={classes.chip}
                 onDelete={(event) => onChange(selectedValues.filter(class => class.id !== classId))}/>
             ))}
           </div>
         )}
         MenuProps={MenuProps}
       >
      {!!allValues.length &&
        <MenuItem value="allValues" selected={allValues.length === selectedValues.length}>
          All classes
        </MenuItem>
      }
      {allValues.map(class => (
        <MenuItem key={class.id} value={class.id}>
          {class.classCode}
        </MenuItem>
      ))}
      </Select>

在开发工具中,我看到allValuesselectedValues等于length,但是selected仍然是false。那怎么可能?我该如何解决?

1 个答案:

答案 0 :(得分:-1)

尝试添加()个括号,例如:

selected={(allValues.length === selectedValues.length)}