我想在本地存储为空时禁用按钮
<button ng-show="LS_wimmtkey!==null">{{LS_wimmtkey}}</button>
按钮值显示为null,但是却显示出来,这是为什么呢?我尝试编写 ng-show="1===2"
当它正常工作时,所以问题出在 LS_wimmtkey
这就是我的使用方式:
在main.controller.js
中:
$rootScope.LS_wimmtkey = localStorage.getItem('LS_wimmtkey');
$rootScope.$watch("LS_wimmtkey", function() {
localStorage.setItem('LS_wimmtkey', $rootScope.LS_wimmtkey);
我的main.view插入到review.view中(因为表单和评论在同一页面,main用于评论列表和评论提交表单)
在 review.controller.js
中提交后,我将值添加到本地存储
function submit() {
if($rootScope.name!=null) {
var JSONObject = {
"name":$rootScope.name,
"surname":$rootScope.surname,
"email":$rootScope.email,
"review":$rootScope.review
}
var temp={
"name":$rootScope.name,
"surname":$rootScope.surname,
"email":$rootScope.email
}
$scope.localArray.push(temp);
$rootScope.LS_wimmtkey = $scope.localArray;
// $rootScope.localStorageService.set("LS_wimmtkey", $scope.localArray);debugger;
// $rootScope.LS_wimmtkey= localStorageService.get("LS_wimmtkey"); debugger;
var Results = UniversalService.PostReview(JSON.stringify(JSONObject));
}
}
我打印 console.log($rootScope.LS_wimmtkey);
并且它为空,那么为什么按钮没有隐藏?
最佳答案
是的,我们不能通过 LS_wimmtkey!==null
检查 null可能它的字符串总是返回 true
我建议你:
<button ng-show="LS_wimmtkey">{{LS_wimmtkey}}</button>
试试这个,它会工作它会工作与 undefine
null
等等...
关于javascript - ng-显示不工作 Angular ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44773247/