首页 > 解决方案 > 材质 UI 列表组件不显示

问题描述

我想在移动视图的下拉菜单(Material UI 抽屉组件)中显示一个 Material UI 列表,但由于某种原因,实际列表没有显示。

列表的代码如下所示:

const menuItems = [
    {
       text: 'Home',
       path: '/'
    },
    {
       text: 'About',
       path: '/about'
    }
];

...

<List>
    {menuItems.map(item => (
        <ListItem
             button
             key={item.text}
             onClick={() => history.push(item.path)}
        >
             <ListItemText>{item.text}</ListItemText>
        </ListItem>
    ))}
</List>

这是应该显示我的列表项的结果,但我得到了这个奇怪的图标:

结果

在此处输入图像描述

这是我的 package.json 文件:

{
  "name": "frontend",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@material-ui/core": "^4.12.1",
    "@material-ui/icons": "^4.11.2",
    "@material-ui/styles": "^4.11.4",
    "@testing-library/jest-dom": "^5.11.4",
    "@testing-library/react": "^11.1.0",
    "@testing-library/user-event": "^12.1.10",
    "firebase": "^8.7.1",
    "react": "^17.0.2",
    "react-dom": "^17.0.2",
    "react-router": "^5.2.0",
    "react-router-dom": "^5.2.0",
    "react-scripts": "4.0.3",
    "react-timeago": "^6.2.1",
    "web-vitals": "^1.0.1"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

--

编辑:

是一个有效的 CodeSandbox 示例

标签: javascriptreactjslistmaterial-ui

解决方案


错误在导入中。

正确的:

import List from "@material-ui/core/List";

推荐阅读