reactjs MUI Select组件不工作,并在渲染时中断应用程序

velaa5lx  于 2023-01-04  发布在  React
关注(0)|答案(1)|浏览(133)

问题现已解决

我正在构建一个带有窗体的模态,并希望使用MUI Select组件,但是我一打开模态,应用程序就中断了;如果我删除选择组件,应用程序工作正常。我不能找出问题,任何帮助将不胜感激。

错误消息:

未捕获的错误:元素类型无效:应为字符串(对于内置组件)或类/函数(对于复合组件),但得到:检查MuiSelectIcon的呈现方法。

这是我当前的代码:

预订. jsx

选择组件

<Box>
                      <InputLabel id="gender">Gender</InputLabel>
                      <Select
                        onChange={handleChange}
                        id="gender-select"
                        required
                        native={false}
                        labelId="gender"
                        value={details?.gender ? details.gender : ""}
                      >
                        <MenuItem value="male">Male</MenuItem>
                        <MenuItem value="female">Female</MenuItem>
                        <MenuItem value="non-binary">Non-binary</MenuItem>
                        <MenuItem value="Prefer not to specify">
                          Prefer not to specify
                        </MenuItem>
                      </Select>
                    </Box>

进口:

//...
import * as React from "react";
import TextField from "@mui/material/TextField";
import Modal from "@mui/material/Dialog";
import DialogActions from "@mui/material/DialogActions";
import DialogContent from "@mui/material/DialogContent";
import DialogTitle from "@mui/material/DialogTitle";
import Select from "@mui/material/Select";
import FormControl from "@mui/material/FormControl";
import InputLabel from "@mui/material/InputLabel";
import MenuItem from "@mui/material/MenuItem";
import Box from "@mui/system/Box";

预期输出:

bybem2ql

bybem2ql1#

在您的handleChange中,您正在解构name prop并将其用作details对象的键,但是您没有提供任何nameselect组件,因此在handleChange触发后,details的状态将更改为如下所示

{undefined: "female"}

我已经创建了一个工作沙箱来复制您的代码here

相关问题