我已经得到了这段代码:
'use strict';
module.exports = MainCtrl;
function MainCtrl() {
this.defaultUrl = 'http://foo/';
}
MainCtrl.prototype.getPoi = function getPoi() {
request( 'http://foo/',function(error,response,body) {
console.log( body );
});
};
在我的路线文件中我需要这样:
var express = require('express');
var request = require('request');
var main_lib = require('../lib/main_ctrl.js');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
router.get('/newroute', function(req,res) {
//var mainCtrl = new main_lib.MainCtrl();
main_lib.getPoi();
res.render('newroute', { title: 'New Route' });
})
module.exports = router;
您可以看到非常简单,我在ExpressJS和NodeJS的第一步,但我不知道为什么我会遇到这个错误:
TypeError:对象函数MainCtrl(){this.defaultUrl =' http://foo/&#39 ;;没有方法' getPoi'
我在快递lib上查看视图模块的定义,并且与以下内容相同:
module.exports = View;
function View(name, options) { .. }
View.prototype.lookup = function lookup(name) { .. }
但我无法理解我做错了什么。