登陆API docs of mongoose后,左侧菜单显示在model.js部分下。 我们看到这样的事情:
- model.js
-Model
-save
-increment
-remove <== 1
-model
-$where
-ensureIndexes
-remove <== 2
...
remove 都有Model#remove([fn])
的链接
还有一个未链接的主题。
标题Model.remove(conditions, [callback])
,记录在同一model.js
部分下。 (在主题Model.ensureIndexes之后)
有谁可以告诉我两者之间的区别是什么?
答案 0 :(得分:2)
您可以随时浏览source code以获取猫鼬。这是了解它如何运作的好方法。
有两个删除:
Model.prototype.remove =&gt;这将从集合中删除特定的mongoose Model对象。它适用于一个实例。
Model.prototype.remove = function remove (fn) { ... }
Model.remove =&gt;这会绕过Mongoose库并使用作为第一个参数提供的条件来执行删除:
Model.remove = function remove (conditions, callback) { ... }
(它在页面上记录为Model.remove,但是看起来页面上的锚点指向错误的函数有问题,可能是因为重复的名称。)