所以我用
npx create-react-app ./ --template typescript
创建我的React项目,直到这里一切都很好,没有错误,之后我想安装Material UI,所以我使用 npm install @mui/material @emotion/react @emotion/styled
,但在此之后我遇到了漏洞,我一直在尝试修复这个问题但我找不到解决方案,如果我这样做 npm audit fix --force
或 npm audit fix
我只会得到更多漏洞而不是更少。
如果有人可以帮助我那就太好了。
简短而简单的答案,它几乎无法修复,但修复这些并不是必需的
vulnerabilities
。
问题来自
create-react-app
(即react-scripts
);而不是 npm install @mui/material @emotion/react @emotion/styled
。
create-react-app
是一个框架,可帮助您通过几次点击来设置 Web 应用程序,但它在大约 3 年前已被弃用(来源:create-react-app Github)。
通常
vulnerabilities
会在以后的版本中被修复,但是,由于create-react-app
不再维护,它依赖于由此类vulnerabilities
组成的旧版本,如果升级dependencies
,可能会导致问题。
通常通过
npm audit
检查,建议您使用 npm audit fix
,这意味着较小的更新(例如 1.0.x
到 1.1.x
)可以解决问题。
但在上述情况下,建议您使用
npm audit fix --force
,这意味着只有重大更新(例如1.x.x
到2.x.x
)才能解决问题(但通常会破坏应用程序)。
但是,
vulnerabilities
也不是不可原谅的——你仍然可以运行该项目;除非您正在从事需要严重安全问题的项目 - 并且create-react-app
团队甚至建议忽略那些vulnerabilities
警告(正如@Phil之前向我提到的)。
如果是这种情况,将您的项目转换为
Vite
或 Next.js
(它们也是 React
并且可以支持 Bootstrap
)可能是一个很好的做法(如 React
所建议)。