【发布时间】:2016-06-23 09:59:26
【问题描述】:
我有 Controller.js
var Controller = function () {
}
Controller.prototype.getAll = function (req , res) {
console.log(this.model);
}
module.exports = Controller;
还有 StickerController.js
var Controller = require('./Abstract/Controller');
var util = require('util');
var StickerController = function () {
this.model = "StickerModel";
Controller.apply(this);
};
util.inherits(StickerController, Controller);
module.exports = new StickerController();
在路由器中
var express = require('express');
var router = express.Router();
var StickerController = require('../controllers/StickerController');
router.get('/api/v1/stickers',Sticker.getAll);
它被记录为未定义,
但如果我在路线外打电话,它会被定义。
我观察到从路由调用的函数中的“this”是不同的
【问题讨论】:
标签: node.js inheritance express routes prototype