express 路由配置的问题
发布于 10 年前 作者 icantunderstand 4634 次浏览 最后一次编辑是 8 年前 来自 问答

刚接触node的菜鸟 express最新的版本是把路由配置都转移到routers目录下的index.js中配置了吗? 我在express自动生成的index.js中加入 router.get(’/about’,function(req,res){ res.end(‘haha’); }); app.js中没有修改 运行能访问127.0.0.1/about这个路径

但是我还看到要在app.js中添加路由的方案 ,就是这个样子的 app.get(’/’, routes.index); app.get(’/about’, function(req, res){ res.send(‘Hello from the about route!’); }); 但是我发现我自动生成的app.js中没有第一条app.get(’/’, routes.index); 当我添加第二条的时候也运行不了

我的理解是express重新将路由条目的配置移到了index.js中配置了 求大神们给讲一讲 多谢了

6 回复

app.js: var data = require(’./routes/data’); app.get(’/data’, data.data); 要有两句这个才行。我也初学。往高手指点。

如果是用express-generator产生的项目,app.js里会有 app.use(’/’, routes);这个,表示路由会定义在routes这个对象里,而这个在前面会require,你看看呢

express-generator是比express多一个命令行工具吗? 我创建项目是 express example 这样创建的 app.js上面有这句话 var routes = require(’./routes/index’); 可以理解成路由的routes的index.js中吗

app.use 申明注入而已。router.get=app.get router能生效是因为APP.js中有一句 app.use(routes) [route = require(’./routes’)] node的的寻找方式 1.routes/index 2.routes/index.js 3.routes/index/index.js

app.use(’/’, routes); app.use(’/users’, users); 是这句话吧? 它只是一个申明 node会自动在查找下面的路由

多谢 我明白什么意思了

回到顶部