使用 Angular JS 和 ExpressJS 进行路由
routing with angular js and expressjs
我正在尝试用express和angularjs启动一个项目。我正在遵循本指南。在第一次运行 localhost:3000 时,我成功地将我的 index.jade 文件加载到视图目录中。索引.翡翠
extends layout
block content
div
ng-view
include footerjs
footerjs.jade
script(src="/javascripts/angular.min.js")
script(src="/javascripts/angular-route.js")
script(src="/javascripts/angular-resource.js")
script(src="/javascripts/app.js")
script(src="/javascripts/task.js")
views 目录有一个名为 partial 的文件夹。 在这个文件夹中,我添加了两个模板。"任务.翡翠"和"着陆.翡翠"。
我的应用.js
var mainApp = angular.module('mainApp', ['ngRoute', 'taskApp', "ngResource", 'ui.router' ]);
mainApp.config(['$routeProvider', '$locationProvider',function(routeProvider, locationProvider) {
locationProvider.html5Mode(true);
routeProvider
.when('/', {
templateUrl: 'partials/landing',
controller: 'taskController'
}).
when('/task', {
templateUrl: 'partials/task',
controller: 'taskController'
}).
otherwise({redirectTo: '/'});
}]);
我做了一条快速路线:
router.get('/partials/:urlName', function(req, res) {
res.render('partials/'+req.params.urlName);
});
我无法路由任何部分。我一开始就被困在我的布局上,并且在尝试路由/task时出现错误 404。任何帮助将不胜感激。
您应该在 templateUrl 中包含文件扩展名:
routeProvider
.when('/', {
templateUrl: 'partials/landing.jade',
controller: 'taskController'
}).
when('/task', {
templateUrl: 'partials/task.jade',
controller: 'taskController'
}).
otherwise({redirectTo: '/'});
相关文章:
- nodejs或expressjs在没有返回响应的情况下重复调用路由
- Expressjs:如何跨路由共享路由中间件
- 从expressjs路由中排除文件夹
- 将附加参数传递给路由(expressjs)
- 在路由 angularjs/expressjs 之间传递数据
- 如何使用 react-router 2 作为 expressjs 的服务器端路由
- 使用 Angular JS 和 ExpressJS 进行路由
- ES6类,传递函数作为参数来注册expressjs路由
- Expressjs 路由与用户名
- ExpressJS中同一路由函数的多个路径
- Expressjs 动态路由问题
- MEAN Stack 中的路由 - 使用 expressjs 框架为 Angular js 和 node 提供路由帮助.
- 路由文件中的 ExpressJS 排序架构对象
- ExpressJS和在单独的路由文件之间传递变量
- `expressJS路由处理程序中未定义this
- Expressjs-所有路由都是404
- 无法使用ExpressJS路由器映射路由文件
- ExpressJs的URL参数和路由
- ExpressJS路由中的RegEx
- 运行时添加路由(ExpressJs)