我正在尝试将一些功能实现到NodeJS应用程序中,其中我的一些控制器(模块)将从一个低音模块继承,以便在其中存储所有常见功能。我很难做到这一点,我不确定为什么。
这是我到目前为止所做的:
我的基础模块(其他人将从中继承):
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方法来继承父模块的方法,但它们不会出现在返回的模块中。 任何人都可以告诉我哪里出错了,这是不是一个好主意?
谢谢!
答案 0 :(得分:2)
我在util.inherits函数中使用了错误的对象!
应该是:
util.inherits(JustGivingAPI, APIBaseController);