Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 构建next.js应用程序时出错:Can';t解决';下一个/head';_Javascript_Reactjs_Next.js - Fatal编程技术网

Javascript 构建next.js应用程序时出错:Can';t解决';下一个/head';

Javascript 构建next.js应用程序时出错:Can';t解决';下一个/head';,javascript,reactjs,next.js,Javascript,Reactjs,Next.js,在我的next.js应用程序中执行next build时,我遇到了以下错误,因为它在next(或npm run dev)中工作正常 错误: $ next build The module 'react-dom' was not found. Next.js requires that you include it in 'dependencies' of your 'package.json'. To add it, run 'npm install --save react-dom' Crea

在我的next.js应用程序中执行
next build
时,我遇到了以下错误,因为它在
next
(或
npm run dev
)中工作正常

错误:

$ next build
The module 'react-dom' was not found. Next.js requires that you include it in 'dependencies' of your 'package.json'. To add it, run 'npm install --save react-dom'
Creating an optimized production build ...

> Using external babel configuration
> Location: "../.babelrc"
Failed to compile.

./pages/_app.js
Module not found: Can't resolve 'next/head' in '../pages'

> Build error occurred
Error: > Build failed because of webpack errors
    at build (.../AppData/Roaming/npm/node_modules/next/dist/build/index.js:7:847)
我通过克隆Material UI的next.js示例开始了我的项目,并在更新时使用它:

然而,考虑到我可能有一个过时的或损坏的版本,我重新克隆了next.js示例,并且也做了
next build
,没有修改任何文件,我得到了相同的错误


我怎样才能解决这个问题

我刚刚克隆了next.js示例,它与npm run dev以及npm run build->npm run start一起工作


根据您的错误判断,我将检查
“react dom”:“latest”
是否存在于您的
包.json的依赖项中。克隆示例后是否运行了npm install?

此问题的解决方案是重新运行这两个命令,然后您的项目将成功运行。我也遇到了这个问题,但我找到了解决办法

  • npm i
  • 纱线安装

  • 当我把我的nextjs应用程序放在一个工作区中时,我遇到了类似的问题。我通过删除我的nextjs应用程序中的以下目录解决了这个问题:

    • 节点单元
    • .下一个
    • 建造

    删除它们后,我从repo目录中运行了
    warn
    ,启动了nextjs应用程序,它又开始工作了。

    有什么原因可以让它与
    npm run build
    一起工作,而不是
    next build
    ?我没有真正的线索,但我猜它与next的运行方式有关
    npx下一次构建
    然后是
    npx下一次启动
    似乎很有效
    npx下一次启动
    是我为生产运行的吗?好问题!不确定,但我相信正确的方法是通过npm脚本来实现。