我有一些导航栏项目,只有在用户通过身份验证时才会显示。下面的简化视图:
导航栏
<body ng-controller="mainController as main">...
<li ng-show="main.isSecretAgent"><a href="#secret">THIS IS A SECRET</a></li>
</body>
工厂
tardis.factory('bgData', [function() {
var persistentData = {
isSecretAgent: false,
};
return {
checkIfSecretAgent: function(){
return persistentData.isSecretAgent
}
}
}]);
主控制器
tardis.controller('mainController',["$scope","bgData",
function($scope,bgData) {
$scope.isSecretAgent = bgData.checkIfSecretAgent()
}
]);
假设工厂中isSecretAgent
设置的值bgData
可能会响应用户操作而改变,我该如何设置我ng-show
的更新基于此?