TypeError:无法读取undefined(Node.js)的属性'get'
我在Node.js中是新的,我需要帮助。 我想在Visual Studio中使用express (^ 4.14.1) ,path (^ 0.12.7)和vash (^ 0.12.2)模块开发一个简单的程序。 我刚刚创build了几个文件,我将在下面向您展示。 homeController.js和index.js文件在控制器文件夹内。
的package.json
{ "name": "the-board5", "version": "0.0.0", "description": "TheBoard5", "main": "server.js", "author": { "name": "Utku" }, "dependencies": { "express": "^4.14.1", "path": "^0.12.7", "vash": "^0.12.2" } }
server.js
var http = require("http"); var express = require("express"); var app = express(); var controllers = require("./controllers"); var port = process.env.port || 1337; app.set("view engine", "vash"); controllers.init(); http.createServer(app).listen(port);
homeController.js
(function (homeController) { homeController.init = function (app) { app.get("/", function (req, res) { res.render("index", { title: "Express + Vash" }); }); }; })(module.exports);
index.js
(function (controllers) { var homeController = require("./homeController"); controllers.init = function (app) { homeController.init(app); }; })(module.exports);
问题是我得到这个错误。
C:\Users\Utku\documents\visual studio 2015\Projects\TheBoard5\TheBoard5\controll ers\homeController.js:5 app.get("/", function (req, res) { ^ TypeError: Cannot read property 'get' of undefined at Object.homeController.init (C:\Users\Utku\documents\visual studio 2015\Pr ojects\TheBoard5\TheBoard5\controllers\homeController.js:5:12) at Object.controllers.init (C:\Users\Utku\documents\visual studio 2015\Proje cts\TheBoard5\TheBoard5\controllers\index.js:5:24) at Object.<anonymous> (C:\Users\Utku\documents\visual studio 2015\Projects\T heBoard5\TheBoard5\server.js:12:13) at Module._compile (module.js:571:32) at Object.Module._extensions..js (module.js:580:10) at Module.load (module.js:488:32) at tryModuleLoad (module.js:447:12) at Function.Module._load (module.js:439:3) at Module.runMain (module.js:605:10) at run (bootstrap_node.js:420:7)
你错过了通过的app
controllers.init();
它应该是
controllers.init(app);
- 如何在azure网站子目录中运行node.js应用程序
- 预览失败 – Visual Studio在发布时会查找打印文件,即使它们不包含在内。
- 可以使用asp.net windows窗体与node.js使用issnode
- node.js与asp.netasynchronous页面
- 在JavaScript网站上使用Glimpse
- .NET开发人员探索NodeJS,MongoDB,AngularJS和ExpressJS
- 参考现有的JavaScript文件进行服务器端的node.jsvalidation
- AngularJs 2与ASP .NET 4.5.1
- asp.net后台和javascript前端的常见模板解决scheme