【发布时间】:2018-07-29 00:51:55
【问题描述】:
我刚开始在基于 Express 生成器的项目中使用 Sequelize。我正在为我的 MySQL 数据库使用 Sequelize,我需要在开始侦听来自网站的 http 请求之前启动数据库。首先我做的是:
app.js
sequelize.sync().then(() => {
app.use('view engine', 'ejs');
app.use('/auth', auth);
//etc etc etc...
}).catch(err=>{
console.log(err);
});
但是有些话告诉我这不是正确的风格。有没有更好的办法?或者只是在运行快速路由等之前使用同步调用,如下所示:
syncFunctionWhatCallsSequelizeSync();
app.use('view engine', 'ejs');
app.use('/auth', auth);
//etc etc etc...
【问题讨论】:
-
你的第一个例子很好。如果你想让你的代码看起来同步,你可以使用
async/await。 -
但是第一个代码很乱,不遵循“一个模块做一件事的标准”
标签: node.js express asynchronous sequelize.js synchronous