![](/img/trans.png)
[英]React Jest Cannot find module '@emotion/styled' from 'node_modules/@mui/styled-engine/node/index.js'
[英]Could not find module in path: 'react/jsx-runtime' relative to '@mui/styled-engine/StyledEngineProvider/StyledEngineProvider.js'
使用MUI创建新的 React 项目时出现此错误。 我从适用于他们的实时 Codesandbox 但不在我本地的文档中复制了这个代码示例。 这是完整的错误信息:
ModuleNotFoundError
Could not find module in path: 'react/jsx-runtime' relative to '/node_modules/@mui/styled-engine/StyledEngineProvider/StyledEngineProvider.js'
下面是我的package.json
:
{
"title": "BasicButtons Material Demo",
"scripts": {
"start": "react-scripts start"
},
"name": "BasicButtons Material Demo",
"main": "index.tsx",
"devDependencies": {
"react-scripts": "latest"
},
"dependencies": {
"@emotion/react": "11.6.0",
"@emotion/styled": "11.6.0",
"@mui/material": "5.1.1",
"@types/react": "16.14.21",
"@types/react-dom": "16.9.14",
"react": "16.12.0",
"react-dom": "16.12.0",
"typescript": "4.0.0-beta"
}
}
根据文档, MUI v5仅支持 React v17+:
MUI 支持最新版本的 React,从 ^17.0.0(在 React 根目录具有事件委托的版本)开始。 查看旧版本的向后兼容性。
出现此错误的实际原因是react/jsx-runtime
模块仅存在于 React v17 中。 如果你被 React v15 或 v16 卡住了,你可以将react
和react-dom
更新到最新的次要版本来修复错误。
将这两个软件包更新到最新版本 (17+) 以修复它:
npm install react@latest react-dom@latest
如果您必须使用 v16
npm install react@16.14.0 react-dom@16.14.0
如果您必须使用 v15
npm install react@15.7.0 react-dom@15.7.0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.