我有一个基于Node.js / Express的应用程序正在使用Sequelize与MySQL服务器通信。在使用npm start
启动应用程序之前,确保特定数据库存在的最佳方法是什么?我想这将是某种运行CREATE DATABASE IF NOT EXISTS foo;
的一次性数据库初始化脚本 - 我只是不确定将它放在何处以及如何将其连接到生命周期事件。
答案 0 :(得分:1)
取自the npm docs npm支持package.json脚本的“scripts”属性,其中一个是prestart
,因此你可以拥有一个package.json
{ "scripts" :
{
"prestart" : "node scripts/mysqlCheck.js",
"start" : "node index.js"
}
}
然后在mysqlCheck.js
进行MySQL数据库检查。然后,当您运行npm start
时,prestart
脚本将在index.js
之前运行。