我正在开发一个使用MongoDB的node.js应用程序,我从文档中读到了这一点:
db.collection
获取特定集合(包含实际集合信息)。如果应用程序不使用严格模式,您可以通过以下方式在不使用回调的情况下使用它。var collection = db.collection('mycollection');
首先,医生所说的“严格模式”是指什么?
还有,以这种方式抢藏品是不好的做法吗?如果没有回调函数,在尝试选择正确的集合时,我是否会失去捕获潜在连接错误的能力?
db.collection('some_collection', function(err, collection) {
// query goes here
});
3条答案
按热度按时间35g0bw711#
http://mongodb.github.io/node-mongodb-native/api-generated/db.html#collection
strict,(Boolean,default:false)如果集合不存在则返回错误
就在文档里。
这样你的应用程序就不能自己创建新的集合,而只能引用以前创建的集合。因此,需要 callback 来捕获错误。
xriantvc2#
除了MongoDB的严格模式,还有一个名为mongo-strict的智能ORM,它可以帮助您安全地使用MongoDB。
https://www.npmjs.com/package/mongo-strict
332nm8kg3#
它可能指的是Javascript的严格模式,而不是Mongo特定的功能。严格模式允许JavaScript语言中一些可选但向后不兼容的更改,有助于捕获一些错误:
What does "use strict" do in JavaScript, and what is the reasoning behind it?