javascript - Javascript/Express - 导出所有方法与导出包含方法的类
问题描述
我在遇到这个被忽视的问题时感到困惑,比如它们有什么不同?
Module.exports = {
search_companies(req, res) {
//some ops
},
get_details(req, res) {
//some ops
}
};
对比
class MainContrller {
search_companies(req, res) {
//some ops
},
get_details(req, res) {
//some ops
}
}
module.exports.MainController = MainController;
解决方案
第一个导出一个带有函数search_companies
and的对象get_details
。因此,您可以调用这些函数对导出的对象起作用。
第二个导出MainController
具有函数search_companies
和的类get_details
。在这里,您必须创建一个实例MainController
才能在实例上调用这两个函数。
如果整个项目只需要该对象的一个实例,则使用第一种语法。它就像一个单例或像静态的,但不需要为它定义一个实际的类。
如果您需要多个不同的MainController
.
推荐阅读
- python - 带有简单 MNIST 数据示例的深度学习错误
- c# - 当我将 .NET Standard 2.0 DLL 库与 .NET Framework 控制台应用程序一起使用时,如何设置依赖项?
- python - 我希望在 gui 中输入的值更改 gui 运行的代码脚本中的值
- sql - 当我能以更简单的方式加入两个专栏时,我为什么要加入?
- javascript - 测试异步 useEffect
- image - 将图像序列保存为 Tiff 文件,但无法在 Matlab 之外查看或打开它
- c# - 如何在 c# 中使用 HttpClient GetAsync 方法传递请求内容
- php - 我的测试功能中的问题试图访问路由组
- javascript - setState 在这种情况下如何不起作用?
- algorithm - 对具有线性复杂性的嵌套循环感到困惑(Big-Oh = O(n)),但我将其工作为对数