javascript - AngularJS forEach 无法处理 $http 响应

标签 javascript html angularjs

获取响应中的值:

[{
  "Pf": "something1",
  "label": ""
}, {
  "Pf": "something1",
  "label": ""
}]

JS

$scope.display = false;

$scope.getPanel = $http({
  mode: 'cors',
  method: 'GET',
  url: '/url/',
  headers: {
    'Content-Type': 'application/json'
  }
}).success(function(response) {

  $scope.original = function() {

    angular.forEach(response, function(value, key) {
      if (value == "something1") {
        dispaly = false;
      } else if (value == "something2") {
        display = false;
      } else {
        display = true;
      }
    });
    return display;
  };
});

HTML

<td>
    <img src="image.png" uib-tooltip="{{status}}" ng-show="original()"/>
</td>

没有从响应中获取键和值

最佳答案

首先,您在 if display 中写 dispaly 而不是 display 确实有错误。

其次,angular foreach 第二个参数是一个将集合中的迭代器作为第一个参数的函数。在这里,您的集合由两个对象组成,因此在每次迭代中,值将是一个对象,例如:

{
  "Pf": "something1",
  "label": ""
}

所以,如果你想测试它是否等于“something1”,你必须将它与 value.pf 而不是 value 进行比较。

您还需要调用 response.data,因为 response 是一个存储有关您的请求答案的不同信息的结构。

最后,我建议您将值显示存储在您的范围内并将其绑定(bind)到 ng-show 指令,如下所示:

JS

$scope.display = false;

$http({
  mode: 'cors',
  method: 'GET',
  url: '/url/',
  headers: {
    'Content-Type': 'application/json'
  }
}).success(function(response) {

    angular.forEach(response.data, function(value, key) {
      if (value.pf == "something1") {
        $scope.display= false;
      } else if (value.pf == "something2") {
        display = false;
      } else {
        display = true;
      }
    });
});

HTML

<td>
    <img src="image.png" uib-tooltip="{{status}}" ng-show="display"/>
</td>

希望对您有所帮助!

关于javascript - AngularJS forEach 无法处理 $http 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46214512/

相关文章:

javascript - 单击的链接将值提交到 SQL SELECT

java - 十六进制字符串到 ByteArray

jquery - IE11 问题与变换 rotateY 和背面可见性悬停效果

javascript - 使 css 数字看起来漂亮

angularjs - typescript 找不到 'require' ,用 Ionic2 设置 pouchdb

angularjs - 如果{{user.userName}}为空,我可以在div中显示替代文本吗?

javascript - 来自另一个模块的 Angular JS 服务 DI

javascript - 带有服务器端 Javascript 的经典 ASP,在不同的文件中调用函数

Javascript MVC 应用程序 - 使用回调编码 "while"条件

html - 我可以结合顶部/底部和径向渐变来使 DIV 从页面中突出吗