Gatsby构建时createStore的preloadedState出现意外键componentDataDependencies报错
问题原因
这个警告是Gatsby本地缓存残留旧版本状态字段导致的:你当前使用的Gatsby版本已经将componentDataDependencies从Redux store的reducer配置中移除,但之前运行项目生成的缓存文件里仍然保留了这个废弃字段,加载缓存时就会触发该提示。由于Gatsby会自动忽略未知字段,因此不会影响项目正常构建。
修复步骤
- 优先执行Gatsby官方提供的缓存清理命令:
该命令会自动删除项目下的gatsby clean.cache和public两个缓存/构建产物目录,绝大多数情况下执行完后重新运行gatsby develop或gatsby build即可消除警告。 - 如果执行清理命令后仍然出现提示,可尝试完整重置依赖:
- 删除项目根目录下的
node_modules文件夹,以及包管理工具对应的锁文件(package-lock.json/yarn.lock/pnpm-lock.yaml) - 重新执行依赖安装命令(
npm install/yarn install/pnpm install)后再启动项目
- 删除项目根目录下的
- 如果以上操作都无效,检查项目依赖的Gatsby第三方插件是否有版本更新,部分适配旧版Gatsby的插件可能仍然会写入这个已废弃的store字段,将对应插件升级到匹配你当前Gatsby版本的版本即可解决。
内容的提问来源于stack exchange,提问作者Ben
相关产品推荐
相关产品推荐

