在example in official docs之后,我发现当重新加载页面时,渲染的局部视图不起作用。
plunker link is here。如果在单独的窗口上启动plunker预览,则单击链接时,页面的URL会随着呈现相应的视图而更改。但是,如果页面重新加载,页面会显示找不到对象!错误。
index.html的相关代码段是
<a href="Book/Moby">Moby</a> |
<a href="Book/Moby/ch/1">Moby: Ch1</a> |
现在,如果点击Moby,页面的网址会显示baseurl/Book/Moby
并且部分重新加载。但是,如果重新加载页面,则会出现找不到对象错误。
script.js中相关的代码部分是
angular.module('ngRouteExample', ['ngRoute'])
.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/Book/:bookId', {
templateUrl: 'book.html',
controller: 'BookController',
resolve: {
// I will cause a 1 second delay
delay: function($q, $timeout) {
var delay = $q.defer();
$timeout(delay.resolve, 1000);
return delay.promise;
}
}
})
.when('/Book/:bookId/ch/:chapterId', {
templateUrl: 'chapter.html',
controller: 'ChapterController'
});
// configure html5 to get links working on jsfiddle
$locationProvider.html5Mode(true);
});
如何重新加载局部视图?