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

首次搭建Next.js项目启动时遇useContext相关TypeError错误

解决Next.js初始项目启动时的TypeError: Cannot read properties of null (reading 'useContext')错误

从你的报错栈来看,问题出现在服务端渲染阶段的_document.js中调用useContext时,属于典型的依赖环境或版本冲突问题,以下是针对性的解决步骤:

1. 升级Node.js到兼容的LTS版本

Next.js 13+要求Node.js 16.8及以上,你当前使用的16.16.0虽满足最低要求,但旧版本可能存在隐性兼容问题。建议切换到Node.js 18.x或20.x LTS版本:

# 用nvm安装并切换到LTS版本
nvm install --lts
nvm use --lts

2. 彻底清理依赖缓存并重新安装

全局/项目依赖缓存冲突是常见诱因,执行以下操作重置依赖:

# npm用户
npm cache clean --force
rm -rf node_modules package-lock.json
npm install

# yarn用户
yarn cache clean
rm -rf node_modules yarn.lock
yarn install

# pnpm用户
pnpm store prune
rm -rf node_modules pnpm-lock.yaml
pnpm install

3. 移除全局Next.js,使用项目本地依赖

报错栈显示你使用了全局安装的Next.js,全局版本与项目本地依赖可能存在版本不一致问题:

# 卸载全局Next.js
npm uninstall -g next
# 重新安装项目本地依赖
npm install next react react-dom

4. 确保React与ReactDOM版本严格匹配

Next.js要求react和react-dom版本完全一致,且与Next.js版本兼容。直接安装最新兼容版本:

npm install react@latest react-dom@latest next@latest

5. 临时禁用增量缓存排查

启动开发服务器时添加--no-cache参数,避免缓存的旧代码干扰:

npm run dev -- --no-cache

以上步骤覆盖了这类无修改初始项目报错的常见诱因,按顺序执行即可解决问题。

内容的提问来源于stack exchange,提问作者Heidi L.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 20:14:54