[英]AngularJS show login/logout button conditionally in navbar on app page
main.jsp中
<html>
<body ng-app="myApp">
<div class="navbar">
<a href="/order"> View Orders </a>
<a href="/logout" ng-show="$scope.isUserLoggedIn"> Logout </label>
<a href="/login" ng-show="!$scope.isUserLoggedIn"> Login </label>
</div>
<div ng-view></div>
</body>
</html>
控制器
var myApp = angular.module('myApp', ['ngRoute']);
...
// route for the default home page
.when('/', {
templateUrl : function($node, tattrs) {
return "resources/html/home.html";
},
controller : 'mainController'
})
// route for the order page
.when('/order', {
templateUrl : function($node, tattrs) {
return "resources/html/order.html";
},
controller : 'orderController'
})
....
myApp.controller('mainController', function($scope, $http) {
....
$scope.isUserLoggedIn = true; //or false
.....
題:
$ scope.isUserLoggedIn對登錄/注銷href無效。 在主應用程序頁面(即ng-app頁面的導航欄中)可能無法訪問該范圍。
我想顯示有條件隱藏“登錄/注銷”按鈕。 有任何想法嗎?
您缺少將controller
分配給div
在那里不需要使用$scope
,只需使用
<div class="navbar" ng-controller="mainController">
<a href="/order"> View Orders </a>
<a href="/logout" ng-show="isUserLoggedIn"> Logout </label>
<a href="/login" ng-show="!isUserLoggedIn"> Login </label>
</div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.