javascript - Node JS 在 module.exports 中调用一个 "local"函数

标签 javascript node.js model-view-controller express

如何在 module.exports 声明中从另一个函数中调用一个函数?

我有 MVC 结构 Node js 项目和一个名为 TestController.js 的 Controller 。我想在 Controller 中访问方法,但是使用 this 关键字会出现以下错误:

cannot call method getName of undefined

"use strict"
module.exports = {
    myName : function(req, res, next) {
        // accessing method within controller
        this.getName(data);
    },

    getName : function(data) {
        // code
    }
}

如何访问 Controller 中的方法?

最佳答案

我找到了解决方案:-)

"use strict"
var self = module.exports = {
    myName : function(req, res, next) {
        // accessing method within controller
        self.getName(data);
    },

    getName : function(data) {
        // code
    }
}

关于javascript - Node JS 在 module.exports 中调用一个 "local"函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33078967/

相关文章:

php - MVC 框架中的模型应该有多粗粒度?

javascript - 如何在 html5 桌面通知中添加简单链接

javascript - 正则表达式以任何顺序匹配多个模式

iphone - 通过套接字发送 Base64 编码图像

javascript - npm 错误!过早关闭

javascript - 记录 Backbone.js 集合中的更改,我的集合未定义

java - Java 中 MVC 的类结构和位置

javascript - 文本区域的自定义占位符

javascript - 获得焦点时如何移动文本框视口(viewport)?

node.js - Visual Studio 2015 - Node.js 的多个实例