路线和意见

我用express来使用nodejs。 在对根path的获取请求中,我想要路由到索引文件。 如果有path“/游戏”的获取请求,我想要路由到不同的来源。

app.get('/', function(req, res){ res.render( "index", {locals : { myLocal : "myValue"}} ); }); app.get('/game', function(req, res){ res.render("/game/index", {locals : { myLocal : "myValue"}} ); }); 

第一个“get”很好,但第二个发送这个exception:

 500 Error: failed to locate view "/game/index" at Function.exports.compile (D:\Webstorm\myExpress\node_modules\express\lib\view.js:61:15) at ServerResponse.res._render (D:\Webstorm\myExpress\node_modules\express\lib\view.js:417:18) at ServerResponse.res.render (D:\Webstorm\myExpress\node_modules\express\lib\view.js:318:17) at exports.game (D:\Webstorm\myExpress\routes\index.js:12:9) at callbacks (D:\Webstorm\myExpress\node_modules\express\lib\router\index.js:272:11) at param (D:\Webstorm\myExpress\node_modules\express\lib\router\index.js:246:11) at pass (D:\Webstorm\myExpress\node_modules\express\lib\router\index.js:253:5) at Router._dispatch (D:\Webstorm\myExpress\node_modules\express\lib\router\index.js:280:5) at Object.middleware [as handle] (D:\Webstorm\myExpress\node_modules\express\lib\router\index.js:45:10) at next (D:\Webstorm\myExpress\node_modules\express\node_modules\connect\lib\http.js:204:15) 

这是我的文件夹结构:

 views |--- game | |---index.jade | |---layout.jade |---index.jade |---layout.jade 

UPDATE ########

我检查了快递本身(文件:“\ express \ lib \ view.js”,function:“_ render”)并打印出本地的“options.root”。 值是:“D:\ Webstorm \ myExpress / views”..这似乎并不正确。 但我仍然想知道为什么根请求的作品。 我改变了这一行:

 app.set('views', __dirname + '/views'); 

对此:

 app.set('views', __dirname + '\\views'); 

没有成功。

由于我在Windows机器上工作,我必须使用“\”而不是“/”。 我对此感到困惑,因为我不必在request-paths(app.get(“/ game”,..))中关心这个,而不是根索引文件。 (res.render(“/”);)

解决scheme是:

 app.set('views', __dirname + '\\views'); 

 res.render('\\game\\index'); 

尝试从那里删除locals关键字和相应的大括号。

尝试删除主要的斜杠:

 res.render("game/index", {locals : { myLocal : "myValue"}} ); 

要么:

 res.render("game\\index", {locals : { myLocal : "myValue"}} ); 

它试图在/game/indexfind一个文件,而不是/directory/with/your/views/game/index