Javascript 在angularjs中显示和隐藏
问题- 我试图使用ng show和ng hide,但我不知道我在哪里出错。当我的对象为空时,它不会隐藏div 请有人给我指点一下好吗?非常感谢 //这是我的看法Javascript 在angularjs中显示和隐藏,javascript,angularjs,Javascript,Angularjs,问题- 我试图使用ng show和ng hide,但我不知道我在哪里出错。当我的对象为空时,它不会隐藏div 请有人给我指点一下好吗?非常感谢 //这是我的看法 <div class="main" ng-controller="myCtrl"> <div ng-show="show"> Show me as json object is not empty </div> <div ng-hide="show"> hide
<div class="main" ng-controller="myCtrl">
<div ng-show="show">
Show me as json object is not empty
</div>
<div ng-hide="show">
hide me as my json object is empty
</div>
</div>
请告诉我哪里出错了。如果我的json(数据)是空的,它也是这样的(对象{})
更新答案:这与ng show和ng hide无关。我必须检查我的json对象
if(data.value)
//多亏了@shomz如果您的响应是一个空对象,那么if(data!=null | | | data!='undefined')
将不起作用-它将始终是真的
事实上,该条件始终为真,因为no对象可以同时为null和“未定义”
您的角度部分看起来不错,但您需要修复JS条件。最简单的修复方法是修改服务,在没有数据时返回false
看看这是怎么回事:
alert({}!=null |{}!='undefined')代码>这是您的完整代码吗?而且,“但不做我需要的”
。。。我们不知道您需要什么。是否确实调用了getMoney()函数?浏览器控制台中是否有日志消息?@demas yes正在调用它。如何在浏览器控制台中检查空对象?我尝试了不同的方法,但到目前为止运气不好。感谢与angular相关的东西,这是一个简单的js问题:最简单的方法是返回false,或者在成功调用后检查您知道的东西。比方说,您知道在一个成功的调用中将有data.json
,然后您只需检查它:if(data.json){…
除非在没有数据的情况下从服务返回null,否则检查null没有意义。如果您确实不想修改服务,请使用我提供给您的链接中的函数之一检查空对象。我必须检查null以隐藏div。
myCtrl();
function myCtrl() {
Service.getMoney()
.success(function (data) {
if(data !=null || data != 'undefined'){
$scope.data = data;
$scope.show= true;
console.log(cart);
}
else{
$scope.show= false;
}
})
.error(function (status, data) {
console.log(status);
})
};