【发布时间】:2017-08-31 01:57:45
【问题描述】:
我有一个对象数组,我使用 ng-repeat 对其进行迭代。但是,每个对象都有 2 个属性 - 国家(字符串)和城市(数组)。如何在某些按钮单击或页面刷新时随机化这组城市。一个例子:
$scope.package = [{
country: 'Sweden',
cities: ['aaa', 'bbb']
}, {
country: 'Sudan',
cities: ['yyy', 'zzz']
}]
$scope.showNext = function() {
// shows next slide but randomize the cities
}
<ul>
<li ng-repeat="pack in package">
<p>{{pack.country}}</p>
<span>{{pack.cities}}</span> <!-- cities should be random value from the array -->
</li>
</ul>
<button ng-click="showNext()"> Next Country </button>
注意:按钮不需要随机化。按钮只是跳到下一张国家幻灯片,但每次都应该改变城市名称。
【问题讨论】:
-
表示城市每次都应该以不同的顺序显示,比如(aaa,bbb,ccc or bbb,ccc,aaa, or aaa,ccc,bbb etc..)?
-
由于城市是一个数组,我不能将 pack.cities[0] 放在 html 中,因为这样做总是数组中的第一个城市。所以我希望 [ ] 中的值是随机的(这里是 0 或 1,因为只有 2 个元素)
标签: javascript angularjs arrays random angularjs-ng-repeat