Node Express中的Jade URL路由

我正在使用Jade构build一个Node Express应用程序,我对如何将浏览器路由到浏览器的特定请求感到困惑。 我明白,为了使浏览器能够使用URL,我们需要使用Node的路由; 然而,从网上看,我发现Express有它自己的路由器。

我用PHPStorm启动我的项目,index.jade将加载…但我怎么加载其他? 这是我现有的代码:

var express = require('express'), routes = require('./routes'), http = require('http'), path = require('path'); var app = express(); app.configure(function () { 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(express.cookieParser('your secret here')); app.use(express.session()); app.use(app.router); app.use(require('less-middleware')({ src:__dirname + '/public' })); app.use(express.static(path.join(__dirname, 'public'))); }); app.configure('development', function () { app.use(express.errorHandler()); }); app.get('/', routes.index); http.createServer(app).listen(app.get('port'), function () { console.log("Express server listening on port " + app.get('port')); }); 

什么是路由我的应用程序的最基本的方式,我在哪里可以find有关此主题的更广泛的文档?

谢谢。

我明白,为了使浏览器能够使用URL,我们需要使用Node的路由; 然而,从网上看,我发现Express有它自己的路由器。

Node.js本身不提供对“路由”的支持,但Express可以。 您使用以下语法在Express中构build路由:

 app.[verb]('[url-path]', [handler]); 

所以你的路由app.get('/',routes.index)将使用routes.index函数处理HTTP GET请求到URLpath/。 Express将自动将请求和响应对象传递给您的处理程序。

你可以像这样添加更多的路由:

 app.get('/users', routes.userList); app.get('/user/:id', routes.userInfoView); app.post('/user/:id', routes.userInfoSave); 

你可以在http://expressjs.com/api.html#app.paramfind更多关于这方面的信息

我正在使用Jade构build一个Node Express应用程序,我对如何将浏览器路由到浏览器的特定请求感到困惑。

一旦调用路由处理程序,说(routes.userList),你可以调用userList中的res.render()方法来呈现你想要的Jade文件。 例如:

 res.render('user_list', { users: [{name: "user1", age: 10}, {name: "user2", age: 20}] }); 

请参阅这里获取更多信息: http : //expressjs.com/api.html#res.render