我有一個問題,用逗號分隔ng-repeat
和ng-if
。AngularJS逗號分隔爲JSON格式
我想以逗號分隔結果,但最後一項還包括comma
。
我的期望是:AAA, CCC, EEE
但產量即將爲:AAA, CCC, EEE,
的ng-repeat
塊如下:
<div ng-repeat="provider in providersInfo">
<span ng-repeat="policy in policiesInfo | filter:{ProviderId : provider.ProviderId }:true">
<span ng-if="policy.HasChecked">{{ policy.PolicyName }}{{$last ? '' : ', '}}</span>
</span>
<!-- or -->
<span ng-repeat="policy in policiesInfo | filter:{ProviderId : provider.ProviderId }:true">
<span ng-if="policy.HasChecked">{{$index == 0 ? '' : ', '}}{{ policy.PolicyName }}</span>
</span>
</div>
這裏,policiesInfo是查找表,輸出加入的JSON
格式是:
對於每個ProviderId
它會包含6個查找記錄:
policiesInfo = [
{PolicyId : 1, PolicyName: 'AAA', ProviderId: 25, HasChecked: true },
{PolicyId : 2, PolicyName: 'BBB', ProviderId: 25, HasChecked: false },
{PolicyId : 3, PolicyName: 'CCC', ProviderId: 25, HasChecked: true },
{PolicyId : 4, PolicyName: 'DDD', ProviderId: 25, HasChecked: false },
{PolicyId : 5, PolicyName: 'EEE', ProviderId: 25, HasChecked: true },
{PolicyId : 6, PolicyName: 'FFF', ProviderId: 25, HasChecked: false }
]
這裏$last
被考慮爲PolicyId : 6
和$index
被認爲是PolicyId : 1
我解決了這個問題,增加了1個過濾器,但你的回答也幫助我也想到了關於** HasChecked的過濾器** – Arulkumar 2014-12-19 07:21:51
您的建議正在工作。 – Arulkumar 2014-12-19 07:32:19