我怎么能在Angular中做到这一点?

时间:2016-06-28 19:58:45

标签: javascript angularjs

我需要得到这些行为

ng-if='season in current_user.subscriptions'

有必要在用户的订阅中检查季节的可用性,订阅来自阵列。我怎么能这样做?

我对current_user的数据: enter image description here 和季节

enter image description here 我希望在本赛季数组用户订阅时显示项目

3 个答案:

答案 0 :(得分:1)

如果我理解你的问题,我相信这就是你要找的东西:

ng-if="current_user.subscriptions.indexOf(season) != -1"

如果season包含在数组current_user.subscriptions中,则此指令将仅呈现元素 。请检查$scope中的所有必要值。

答案 1 :(得分:1)

我会为它做一个谓词函数。

ng-if="hasSubscription(season)"

在您的控制器或指令中定义它:

$scope.hasSubscription = function (sub) {
  var i, subs = $scope.current_user.subscriptions;
  for (i = 0; i < subs.length; i++) {
    if (subs[i].id === sub.id) {
      return true;
    }
  }
  return false;
};

答案 2 :(得分:0)

您可以验证订阅的长度,例如... ng-if =&#34; current_user.subscriptions.season&#34;