网站开发维护面试,最新电视剧在线观看免费,平面设计师证书,抖音分享到wordpress写了一个init.js函数
使用了glob来对协助完成(https://github.com/isaacs/node-glob)连接的数据库的名称(smile-vue)连接数据库操作:connect 断线重开连接失败连接成功 初始化所有的Schemas暴露给其他页面使用的接口
const mongoose require(mongoose);
const db mongodb:/…写了一个init.js函数
使用了glob来对协助完成(https://github.com/isaacs/node-glob)连接的数据库的名称(smile-vue)连接数据库操作:connect 断线重开连接失败连接成功 初始化所有的Schemas暴露给其他页面使用的接口
const mongoose require(mongoose);
const db mongodb://localhost/smile-vue
const glob require(glob);
const { resolve } require(path);// 初始化所有已经定义的Schema
exports.initSchemas () {glob.sync(resolve(__dirname, ./schema, **/*.js)).forEach(require);
}exports.connect () {// 连接数据库mongoose.connect(db);// 最大连接次数...let maxConnectTimes 0;return new Promise((resolve, reject) {// 增加数据库监听事件mongoose.connection.on(disconnected, (err) {if (maxConnectTimes 3) {maxConnectTimes;mongoose.connect(db);console.log(正在第${maxConnectTimes}次连接数据库...);} else {reject(err);throw new Error(数据库出现问题,程序无法搞定,请认为修理....);}});mongoose.connection.on(error, () {console.log([error] 数据库出错);mongoose.connect(db);})mongoose.connection.once(open, () {console.log([ok] MongoDB connected successfully);resolve()})})
}在服务器端使用
假设启动文件是 index.js1.导入2.使用一个立即执行函数,在服务器启动时连接数据库
const { connect, initSchemas } require(./database/init.js);
(async () {await connect();initSchema();
})()