这是[plunker]:http://plnkr.co/edit/iPsyEAIQWxJIJuneZb8B?p=preview
我想要的是当我点击登录时,auth指令应该自动将模板更改为'logout.html',然后当点击注销时,切换到使用'login.html'。 但到目前为止,我应该手动刷新页面来制作切换模板的指令。
我如何达到这个目的?
答案 0 :(得分:1)
使用路线。
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider
.when('/login', {
templateUrl: 'login.html',
controller: 'loginCtrl'
})
.when('/logout', {
templateUrl: 'logout.html',
controller: 'logoutCtrl'
})
}]);
然后你做$ location.path('/ logout')或$ location.path('/ login')
答案 1 :(得分:0)
我修复了你的掠夺者的几个错误。查看here
您的主要错误是$ watch表达式。它应该是scope.$watch('authed', function () {});
而不是scope.$watch(scope.authed, function () {});
。
我也玩了一下,然后想出了this version。我们的想法是将登录/注销逻辑与cookie操作分开,并摆脱显式DOM操作,$ compile()等。