Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在angularjs中显示和隐藏_Javascript_Angularjs - Fatal编程技术网

Javascript 在angularjs中显示和隐藏

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

问题-

我试图使用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 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);
                })
        };