当前位置: 首页 > 知识库问答 >
问题:

使用react 18创建react应用程序依赖版本问题

公冶渝
2023-03-14

npx create-react-app my-project会导致以下依赖项错误:

npx版本:8.5.0

Installing template dependencies using npm...
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR! 
npm ERR! While resolving: react-18@0.1.0
npm ERR! Found: react@18.0.0
npm ERR! node_modules/react
npm ERR!   react@"^18.0.0" from the root project
npm ERR! 
npm ERR! Could not resolve dependency:
npm ERR! peer react@"<18.0.0" from @testing-library/react@12.1.5
npm ERR! node_modules/@testing-library/react
npm ERR!   @testing-library/react@"^12.0.0" from the root project
npm ERR! 
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

该命令仍会生成一个项目目录,但在创建的目录中运行npm start,并且节点模块中缺少web vitals

>

  • 按照上面的错误消息建议,使用--force--legus-peer-deps运行相同的命令并不能解决问题。

    删除节点_模块包锁。json和运行npmi也不能解决问题。


  • 共有3个答案

    戚阳
    2023-03-14

    它通过删除“节点模块”文件夹和“包锁”对我起了作用。json的文件。然后,我将react和react dom版本都更改为17.0.2,而不是Gavriel的答案所建议的18.0.0https://stackoverflow.com/a/71836018/12490294.然后,在app文件夹中,我运行

        npm i web-vitals --save-dev
    

    然后

        npm start
    

    应用程序已成功启动

    澹台鸿熙
    2023-03-14

    查看这里的Github问题。

    以下是临时解决方法:

    >

    转到已安装的cra模板包文件夹,并在“template.json”文件中将“@testing library/react”:“^12.0.0”更改为“@testing library/react”:“^13.0.0”

    返回你的根文件夹,运行npx create react app my app(你的应用名称)——模板文件:PATH_to_your_CUSTOM_模板

    此外,您可以让构建失败,删除node_modules文件夹以及json包。锁定文件。打开包裹。json文件,并将react和react dom更改为早期版本。

    例如:

    {
      "name": "frontend",
      "version": "0.1.0",
      "private": true,
      "dependencies": {
        "cra-template": "1.1.3",
        "react": "^17.0.2",
        "react-dom": "^17.0.2",
        "react-scripts": "5.0.0"
      },
      "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"
        ]
      }
    }
    

    删除reportWebVitals。js Removeimport reportWebVitals from'/报告WebVitals' 来自索引。js RemovereportWebVitals() 从索引底部开始。js

    最后运行npm安装

    尉迟明贤
    2023-03-14
    匿名用户

    在此之前,您可以删除节点_modules文件夹和包锁。json。接下来,打开包。json和change
    “react”:“^18.0.0”

    您也可以尝试以下方法(joooni1998建议):

    1. 删除node_模块包锁。json
    2. 运行npm i web vitals--save dev
    3. 运行npm安装

    然后,您可以再次使用npm run buildnpm start

     类似资料:
    • C:\Users\Price Charles 在C:\Users\Price Charles\larotiks中创建新的React应用程序。 安装包。这可能需要几分钟。使用cra模板安装反应、反应-多姆和反应-脚本... 我正在创建我的反应项目,但它总是卡在这里,不能继续创建我的项目。请帮帮我

    • 所以,基本上,每次我使用npx、npm或Thread(已经全部试用过)运行create react应用程序,同时使用NodeJS 12、NodeJS 16.3.0和npm 7.15(或类似的东西),它都会给我带来多个依赖漏洞。使用最新版本的npm和nodeJS,我得到了24个(11个中等,13个高)。如何解决这些依赖关系?还是可以忽略它们。我希望最终在生产模式下使用建议的应用程序,但我一辈子都不知

    • 我试图在我的项目中安装,但是生成了一个没有开始脚本的package.json,我得到了一个错误"未提供模板。这可能是因为您使用的create-react-app版本过低。请注意,不再支持创建-反应-应用程序的全局安装。"正如在关于这个问题的其他问题中建议的那样,以下是我已经尝试过的:,然后(现在当我输入<它说:在......中没有创建反应应用程序,并重新启动了我的计算机。 我不知道还能尝试什么。谢

    • 我尝试用创建react app。它给了我以下错误:

    • OP EDIT:如果其他人遇到此问题:该应用程序是使用create react app创建的,该应用程序将导入限制在src文件夹内。但是,如果将react脚本升级到v1。0.11它确实允许您访问包。json。 我正试图从软件包中获取版本号。我的应用程序中的json。 我已经尝试过这些建议,但没有一个有效,因为我无法访问该软件包。来自src文件夹之外的json(可能是由于React,我不熟悉这个)。

    • 我没有做任何更改,我只是运行“CreateReact应用程序客户端”,然后一切正常运行,我将cd放入目录并运行“ThreadStart”。然后我有两个问题:1)它说“有些东西已经在3000端口上运行了”。不幸的是,当我使用lsof和netstat时,端口3000上没有运行任何东西。我说在不同的端口上运行,然后它会尝试为应用程序提供服务。2) 新港口没有提供任何服务。浏览器将打开,控制台不会给出任何