node.js - Node exports "TypeError: Object #<Object> has no method 'init'" -
i'm having strange issue, possabily noob one, life of me can't node module.exports work me.
here route (routes/about.js)
var = (function () { function about() { this.init(); } about.prototype.init = function () { console.log('init'); }; about.prototype.me = function (req, res) { this.init(); res.json([ 'jamie here' ]); }; return about; })(); module.exports = about; and app.js
/** * module dependencies. */ var express = require('express') , routes = require('./routes') , = require('./routes/about') , http = require('http') , path = require('path'); var app = express(); = new about; console.log(about); // environments app.set('port', process.env.port || 3000); app.set('views', __dirname + '/views'); app.set('view engine', 'jade'); app.use(express.favicon()); app.use(express.logger('dev')); app.use(express.bodyparser()); app.use(express.methodoverride()); app.use(app.router); app.use(express.static(path.join(__dirname, 'public'))); // development if ('development' == app.get('env')) { app.use(express.errorhandler()); } app.get('/', routes.index); app.get('/me/?', about.me); http.createserver(app).listen(app.get('port'), function(){ console.log('express server listening on port ' + app.get('port')); }); when about.me called, "typeerror: object # has no method 'init'" error...
any appreciated!
i've worked out! stupid mistake.
i'm passing reference me function, not object itself. no wonder why doesn't exist!
Comments
Post a Comment