我正在尝试使用express和angularjs开始一个项目。我正在关注this指南。 首先,运行localhost:3000,我成功地在views目录中加载我的index.jade文件。 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目录有一个名为partials的文件夹。在这个文件夹里面我添加了两个模板。 " task.jade"和#34; landing.jade"。
我的app.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);
});
我无法路由任何部分。我在初始时遇到了布局,在尝试路由/任务时遇到错误404。任何帮助将不胜感激。
答案 0 :(得分:0)
您应该在templateUrl中包含文件扩展名:
routeProvider
.when('/', {
templateUrl: 'partials/landing.jade',
controller: 'taskController'
}).
when('/task', {
templateUrl: 'partials/task.jade',
controller: 'taskController'
}).
otherwise({redirectTo: '/'});