为什么在不同的模型文件中使用model.export?
关于拆分模型数据的问题,看一些Stackoverflow的答案,我看到两种不同的格式。 见下文:
var UserSchema = mongoose.Schema({ name: String }) module.exports = mongoose.model('User', UserSchema);
与此方法相比:
var UserSchema = mongoose.Schema({ name: String }) mongoose.model('User', UserSchema);
使用module.exports...
与仅使用module.exports...
什么区别?
mongoose.model
返回它定义的Model
。 将其设置为module.exports
可以让您轻松创buildModel
实例,而无需从连接中检索它。
a.js
var User = require('./b'); var myUser = new User;
b.js
var UserSchema = mongoose.Schema({ name: String }) module.exports = mongoose.model('User', UserSchema);
…注意我可以直接调用new User
(在设置User
require('./b')
module.exports
require('./b')
…这是module.exports
允许我做的事情。注意,这不是mongoose
本身的一部分,而是节点模块系统 。
- 停止执行Express.js中的Sequelize承诺
- 通过nodejs中的电子邮件进行双向身份validation
- “types错误:res.sendStatus不是一个函数”为什么我得到这个错误后有一段时间?
- 在达到路线时,您应该将逻辑放在Express应用程序中?
- Krakenjs如何将除api调用之外的所有请求路由到index.html?
- 在Express中将节点env传递给layout.jade,而不显式定义路由
- NodeJS Express对URL进行编码 – 如何解码
- 我是否应该在每个路由模块文件中重复所有这些要求?
- 我如何摆脱错误“”。 是不是被认为是一个内部或外部命令“运行'npm安装'为MEAN堆栈?