我正在尝试在 NodeJS 应用程序中实现一些功能,其中我的一些 Controller (模块)将从一个低音模块继承,以便在其中存储所有常见功能。但我很难做到这一点,我不确定为什么。
这是我到目前为止所拥有的:
我的基本模块(其他人将从中继承):
var http = require('http');
function ApiBaseController() {
var self = this;
}
ApiBaseController.prototype.makeRequest = function() {
};
module.exports = ApiBaseController;
子模块(将从上面的子模块继承:
var APIBaseController = require(__dirname + '/apiBase/ApiBaseController.js'),
inherits = require('util').inherits;
function JustGivingAPI() {
APIBaseController.apply(this);
}
inherits(APIBaseController, JustGivingAPI);
JustGivingAPI.prototype.getAmount = function() {
console.log("here");
};
module.exports = JustGivingAPI;
以及需要该模块的客户端代码:
var express = require('express');
var router = express.Router();
var JustGivingController = require('../controllers/api/JustGivingAPI');
var APIObject = new JustGivingControllerObject();
我试图从 JustGivingAPI 模块的构造函数中实现 aply Javascript 方法来继承父模块的方法,但它们不会出现在返回的模块中。 谁能告诉我哪里出了问题以及这是否是个好主意?
谢谢!
最佳答案
我在 util.inherits 函数中以错误的方式获取了对象!
应该是:
util.inherits(JustGivingAPI, APIBaseController);
关于javascript - NodeJS 中的模块继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36180239/