2
我有一个数据库模块。我希望模块在第一次导入时进行检查,并在数据库模块无法连接数据库时崩溃。快速失败,努力失败。导入模块并抛出错误/导入时停止执行
对于这个例子,我们将使用knex,但问题是真的针对任何模块或任何情况。
database.js
文件:
'use strict';
import knex from 'knex';
const instance = knex({
client: 'mysql',
connection: {
database: 'myDatabase',
host: 'host_that_does_not_exist',
password: '',
port: 3306,
user: 'bob'
}
});
instance.raw('select 1+1 as result').catch(err => {
throw new Error('Database connection was not found', err);
});
export default instance;
正如你看到的,我想让它来测试原始查询,这是捕获了一个错误,抛出一个错误。
我只知道一种停止节点的方法,那就是拨打process.exit(1)
。
这是唯一的方法吗?