在hapijs中只导入一次插件,并在任何地方使用它



我应该在我的hapijs应用程序中使用一个名为hapi-mongoose-db-connector的插件。在存储库页面中,开发人员建议了正确导入的方法

# from the server
mongoose = server.pack.plugins['hapi-mongoose-db-connector'].mongoose
# or from a plugin
mongoose = plugin.plugins['hapi-mongoose-db-connector'].mongoose

并且不鼓励使用它。相反,他建议按照以下方式进行:

你什么都不做,只需要在你的插件中使用猫鼬。作为npmrequires是singleton(代码只加载一次,这非常有效井)

但他没有举任何例子。在这一点上,我不太确定如何使用它。我不会调用每个js文件mongoose。我会在我的应用程序中调用它一次,在我为数据库创建模型的js文件中使用它。你知道在这些情况下的最佳实践吗?

实际上,第一种方法是用hapi的方式做这类事情。

但由于mongose模块是单例,该插件只需要mongose并初始化它[1],在将该插件加载到hapi中后,您可以在任何文件中使用mongose;

var mongoose = require("mongoose");

最新更新