我有一个功能齐全的 Nextjs 14 应用程序,在语义上可以工作。它是我制作的一个网站,已经部署,没有任何问题。但现在当我在 VScode 中再次运行该项目时,它会中断并给出
useReducer
错误。
到目前为止,我还没有找到任何直接解决此问题的有用文档。我已附上我收到的依赖项和错误。
我已经用
sudo npm run dev
正常运行了我的项目,期待我的网站能够出现。不幸的是,我在其他项目中也看到了同样的错误。我遇到的相同 useReducer
错误也出现在使用 create-next-app <project-name>
安装的全新 Nextjs 14 项目中。
看到错误后,我使用
sudo npm update && upgrade
更新并升级了所有依赖项。这意味着使用维护的存储库或没有错误的库来使所有内容保持最新。它也不起作用。
然后我正确删除了项目中的
.next
和node_modules
文件夹。我正在开发 M1,这意味着每回合都要检查权限以确保安全。这很顺利,但不是解决方案。
从表面上看,您正在应用程序中的某处使用“useReducer”挂钩,并尝试访问其属性之一。
例如,如果您有以下代码:
const myObject = {}
console.log(myObject.someProperty) //you get undefined
您的 useReducer 钩子也发生了类似的事情。您的代码的一部分正在尝试访问它并抛出错误,因为它尝试访问的属性不存在。
尝试在 vscode 中搜索所有使用“useReducer”的实例,并确保您的代码尝试访问的属性存在。
useRedcuer 文档:https://react.dev/reference/react/useReducer