You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用create-next-app创建Next.js TS项目后启动报错:Cannot read 'useContext'

无法运行全新Next.js TypeScript项目:TypeError: Cannot read properties of null (reading 'useContext')

我通过命令npx create-next-app project-name --ts创建了一个Next.js项目,未修改任何初始代码的情况下运行npm run dev,出现如下错误:

Server Error
TypeError: Cannot read properties of null (reading 'useContext')

This error happened while generating the page. Any console logs will be displayed in the terminal window.
Call Stack
Object.useContext
file:///X:/.Programming/jukify_next/node_modules/react/cjs/react.development.js (1618:21)
useContext
node_modules\next\dist\pages\_document.js (707:105)
renderWithHooks
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5658:16)
renderIndeterminateComponent
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5731:15)
renderElement
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5946:7)
renderNodeDestructiveImpl
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6104:11)
renderNodeDestructive
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6076:14)
finishClassComponent
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5688:3)
renderClassComponent
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5696:3)
renderElement
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5943:7)
renderNodeDestructiveImpl
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6104:11)
renderNodeDestructive
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6076:14)
renderContextProvider
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5920:3)
renderElement
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6017:11)
renderNodeDestructiveImpl
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6104:11)
renderNodeDestructive
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6076:14)
renderContextProvider
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (5920:3)
renderElement
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6017:11)
renderNodeDestructiveImpl
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6104:11)
renderNodeDestructive
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6076:14)
retryTask
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6528:5)
performWork
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6576:7)
<unknown>
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6902:12)
scheduleWork
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (77:3)
startWork
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6901:3)
<unknown>
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6996:5)
new Promise
<anonymous>
Object.renderToReadableStream
file:///X:/.Programming/jukify_next/node_modules/react-dom/cjs/react-dom-server.browser.development.js (6949:10)
renderToString
file:///X:/.Programming/jukify_next/node_modules/next/dist/server/render.js (63:55)
<unknown>
file:///X:/.Programming/jukify_next/node_modules/next/dist/server/render.js (886:112)
NextTracerImpl.trace
file:///X:/.Programming/jukify_next/node_modules/next/dist/server/lib/trace/tracer.js (65:20)
Object.renderToHTML
file:///X:/.Programming/jukify_next/node_modules/next/dist/server/render.js (886:57)
async doRender
file:///X:/.Programming/jukify_next/node_modules/next/dist/server/base-server.js (936:34)
async cacheEntry1.responseCache.get.incrementalCache.incrementalCache
file:///X:/.Programming/jukify_next/node_modules/next/dist/server/base-server.js (1059:28)
async
file:///X:/.Programming/jukify_next/node_modules/next/dist/server/response-cache/index.js (83:36)

我并没有在代码中使用useContext,且更换其他设备创建新项目仍会出现相同问题。

可行排查方案

  • 检查Node.js版本:确保使用Next.js官方推荐的LTS版本(如18.x、20.x),版本过高或过低可能引发兼容性问题
  • 清理依赖与缓存:删除node_modules、.next文件夹,清空npm缓存后重新安装依赖
    rm -rf node_modules .next
    npm cache clean --force
    npm install
    
  • 指定稳定版本创建项目:如果是最新版Next.js的bug,尝试用指定版本初始化项目,例如:
    npx create-next-app@13.4.0 project-name --ts
    
  • 重置全局create-next-app:全局安装的脚手架可能存在问题,卸载后重新安装
    npm uninstall -g create-next-app
    npm install -g create-next-app
    
  • 关闭实验性配置:若项目默认启用了实验性特性,在next.config.js中关闭相关选项

内容的提问来源于stack exchange,提问作者emhossein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 11:25:03