Strapi启动报错TypeError: Cannot convert undefined or null to object如何解决
Strapi服务无法启动报错解决方案
报错信息
[2021-11-12T10:48:02.075Z] debug ⛔️ Server wasn't able to start properly.
[2021-11-12T10:48:02.076Z] error TypeError: Cannot convert undefined or null to object
at Function.values ()
at Object.load (/home/mondher/plateforme/node_modules/strapi-database/lib/connector-registry.js:17:39)
at DatabaseManager.initialize (/home/mondher/plateforme/node_modules/strapi-database/lib/database-manager.js:32:21)
at Strapi.load (/home/mondher/plateforme/node_modules/strapi/lib/Strapi.js:299:19)
at async Strapi.start (/home/mondher/plateforme/node_modules/strapi/lib/Strapi.js:158:9)
报错原因
该错误是Strapi初始化数据库模块时,读取到的连接器配置为空或者未定义,无法完成数据库连接器加载导致的启动失败。
排查修复步骤
- 检查数据库配置文件
打开项目config/database.js(对应运行环境的配置文件路径为config/env/[环境名]/database.js),确认以下配置项完整有效:defaultConnection字段已赋值,且值对应connections配置里的已存在的连接名connections配置项不为空,每个连接配置下的connector字段已正确填写(SQL类数据库填bookshelf,MongoDB填mongoose)
- 修复损坏的依赖
删除项目根目录下的node_modules文件夹、package-lock.json或yarn.lock文件,执行npm install或者yarn install重新安装所有依赖 - 校验环境变量有效性
如果你的数据库配置使用了环境变量注入,确认Strapi启动时所有用到的环境变量都已正确加载,没有空值导致配置解析失败 - 确认版本兼容性
若近期进行过Strapi版本升级,确认安装的数据库连接器版本和Strapi核心版本完全匹配,避免跨版本API不兼容问题
内容的提问来源于stack exchange,提问作者Mondher
相关产品推荐
相关产品推荐

