在Mongoose中,我从未真正看到过在架构上设置多个Mongoose插件的示例。 我所见过的只是
schema.plugin(mongooseSearchPlugin);
如何为此添加另一个插件?例如mongoosePaginatePlugin?
答案 0 :(得分:3)
不幸的是,mongoose不支持一次初始化多个插件。因此,唯一的选择是多次调用schema.plugin(...)
。
您可以多次调用该函数来初始化所有插件,如下所示:
schema.plugin(mongooseSearchPlugin);
schema.plugin(mongoosePaginatePlugin);
或者,如果将函数存储在iterable(类似于数组)中,则可以迭代每个项并以这种方式初始化它。像这样:
const myPlugins = [ mongooseSearchPlugin, mongoosePaginatePlugin ];
myPlugins.forEach(plugin => schema.plugin(plugin));
// Or you can you block style
myPlugins.forEach((plugin) => {
schema.plugin(plugin);
});
根据您使用的插件数量,这可能会缩短您的代码。最终它是一种造型选择。
希望这个解释有所帮助。
答案 1 :(得分:0)
只需多次致电schema.plugin