1
我遇到了使用角度路由和快速顯示部分顯示的問題。我想設置一些東西,所以我仍然可以使用帕格(以前的玉)來寫短格式的html。據我所知,一切都應該工作,沒有錯誤,一切都拉正確。我的應用已經工作的大多數其他部分(API調用,控制器等),我的主要頁面如下:帶有Express後端的角度路由模板UUl不起作用
doctype html
html(ng-app='myapp')
head
base(href='/')
script(src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular.js")
script(src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular-route.js")
body
header#main
.content(ng-view)
script(src="/js/app.js")
script(src="/js/controllers/adminController.js")
script(src="/js/routes.js")
這裏是我的路線文件
angular.module('myapp')
.config(function ($routeProvider, $locationProvider) {
$routeProvider
.when('/admin', {
templateUrl: '/templates/admin',
controller: 'AdminController',
caseInsensitiveMatch: true
})
.otherwise({
template: '<h1>Page not found</h1>'
})
;
$locationProvider.html5Mode(true);
});
最後,快遞航線:
router.get('/templates/:name', function(req, res, next) {
var name = 'templates/' + req.params.name;
console.log('Express: ' + name);
res.render(name, function(err, html){
//this callback function can be removed. It's just for debugging.
if(err)
console.log("Error: " + err);
else
console.log("We're good!");
res.send(html);
});
});
最後,這裏是節點服務器輸出:
Express: index
GET /admin 304 68.962 ms - -
GET /js/app.js 304 0.994 ms - -
GET /js/controllers/adminController.js 304 0.751 ms - -
GET /js/routes.js 304 14.590 ms - -
Express: templates/admin
We're good!
GET /templates/admin 304 368.081 ms - -
正如您所看到的,索引加載,調用partial,並且模板正在調用並呈現,就像您期望的那樣。
問題是ng-view沒有被替換或更新。如果我將路由更改爲模板而不是templateUrl,並且只是打印出一行文本,則所有工作都很好,所以我知道路由正在工作,這不是應用程序配置問題。
我一直堅持這幾天,沒有任何錯誤信息,我完全處於黑暗中,爲什麼這不起作用。
此外,當我查一下我的控制下,我得到的部分,所以它是通過適當的未來:
angular.module('buriedcinema.controllers')
.controller('AdminController', ['$templateCache', function(Movies, Users, $templateCache){
console.log($templateCache.get('templates/admin'));
}
console:
<h1> this is my partial </h1>
'GET/templates/admin'在檢查員或類似部門中的反應如何?或者嘗試'curl http:// YOURSERVER:PORT/teplates/admin'並查看渲染的內容。 JS控制檯說什麼?任何錯誤? – jigfox
它工作正常,沒有錯誤。 – stevenamoore
和服務器呈現什麼? – jigfox