转发器的角度逻辑

时间:2015-04-17 01:28:58

标签: angularjs

我有一个像这样的简单转发器设置

<ion-item ng-repeat="location in data.posts">
  {{location.title}}
</ion-item>

当然,对于每个阵列,我都会在离子项中获得一个标题。现在是棘手的事情。

data来自我正在拉的一些JSON。我想要访问更深入数组的内容,但我不知道如何获取它。在javascript中我会以

的形式访问它
location['custom_fields']['coupon_relationships']

哪个coupon_relationships是任意数量项目的另一个数组。我只是希望能够计算那里的项目数量并打印出整数。然后我想做逻辑,以便优惠券这个词跟随,除非只有1,我希望这个词是优惠券。我知道我可以通过javascript完成所有这些,但我正在尝试学习AngularJS的功能。这一切都可以通过Angular html实现吗?

2 个答案:

答案 0 :(得分:2)

很难说这是否是您对您的问题感兴趣的内容,但您可能会尝试以下内容:

<ion-item ng-repeat="location in data.posts">
  {{location.title}} -
  {{location.custom_fields.coupon_relationships.length}}
  {{location.custom_fields.coupon_relationships.length != 1 ? 'Coupons' : 'Coupon'}}
</ion-item>

答案 1 :(得分:1)

John的答案最适合于角1.1.5+(that's when they added the ternary operator in templates

如果您运行的是旧版本,则可以执行以下操作:

<div ng-app>
    <div ng-controller="PollCtrl">
        <li ng-repeat="poll in polls">
            <a href="#">
            {{poll.custom_fields.coupon_relationships.length}}
            Coupon<span ng-if="poll.custom_fields.coupon_relationships.length != 1">s</span>
            </a>
        </li>
    </div>
</div>

控制器:

function PollCtrl($scope) {
    $scope.polls = [
        {
            custom_fields:
                {
                  coupon_relationships:
                     [
                       'one here', 'another','fffff','ffffff'
                     ]
                }
        }
     ]
}

codepen