如何在 Express.js 中为路由的子路径呈现不同的视图
How can I render a different view for a subpath of a route in Express.js?
我正在开发一个Node js + Express + express-handlebars应用程序。在我的应用程序.js文件中,我将路由定义为
var students = require('./routes/students');
var faculty = require('./routes/faculty');
app.use('/students', students);
app.use('/faculty', faculty);
学生.js和教职员工.js存在于路由文件夹中的位置。因此,当用户转到包含/students 的路径时,我在 students.js 中执行以下操作:
var express = require('express');
var router = express.Router();
router.get('/', function(req, res){
res.render('students_view', {
msg : 'this is student page'
});
});
module.exports = router;
其中students_view
是视图文件夹中的快速车把页面。现在假设我想添加一个新学生,当我按下student_view页面上的"添加"按钮时,它会将我带到包含以下 url 的页面:/students/add
在该页面上,我需要呈现一个不同的视图(准确地说是表单)。在我的应用程序中.js我正在执行以下操作:
app.use('/student/add', students);
在我的学生中.js我正在做以下事情:
router.get('/add', function(req, res){
res.render('students_add', {
msg : 'this is student add page'
});
});
但是,它仍然转到较早的 router.get('/') 并呈现student_view页面。如何为此路径呈现不同的视图?它是否需要自己单独的路由(例如student_add.js)来处理获取和发布?
您正在使用app.js
中的路由。 将student.js
更改为
router.get('/', function(req, res){
res.render('students_view', {
msg : 'this is student page'
});
});
router.get('/add', function(req, res){
res.render('students_add', {
msg : 'this is student add page'
});
});
并app.js
app.use('/students', students);
// not need of app.use('/students/add', students);
删除app.js
中的app.use('/student/add', students);
。
只需在/routes/students.js
中写下/students
路线
app.use('/students', students);
保存所有网址,如下所示:
/students
/students/foo
/students/foo/bar
...
除非你在app.use('/students', students);
之前写一条像app.use('/students/baz', anotherStudentsRoute);
这样的路线。
- 如何使用javascript从主svg对象动态创建svg视图框
- 正在使用$location.path(.)路由ng视图
- angular.js没有'无法在PhoneGap中处理视图标记
- 如何包含特定于每个视图angularjs的javascript文件
- 通过在Dojo mobile ViewController.openExternalView中动态更改打开同一外部视图的
- Kendo:我该如何在树视图中创建一个递归的hieiarchy
- Ajax Live搜索发布到Laravel视图
- backbone.js无法渲染视图
- Javascript:使用绝对路径设置img src
- 根据某些条件在视图之间切换
- 如何在d3.js中返回路径的y坐标
- 如何将路径更改广播到 AngularJS 应用程序中的所有视图
- expressjs条件视图呈现路径
- 如何在 Express.js 中为路由的子路径呈现不同的视图
- 以数学方式转换 SVG 路径中的值以填充视图框
- 当用户使用 JavaScript 单击视图源代码时,如何保护 IMG SRC 路径
- 当使用视图框时,在拉斐尔.js中拖放一组路径
- 我的视图的相对URL路径在部署时中断
- Ember.js返回路由时无法在路径中找到视图
- SVG路径元素未触发JavaFX8 Web视图中的鼠标事件