使用ng-repeat并强制列出一个列表项

时间:2017-06-16 07:59:46

标签: html angularjs

我正在使用Angular Material学习AngularJs(v1.6),而且我遇到了一个小而烦人的显示问题。

我用开关按钮创建了一个简单的项目列表(水果)。如果存在水果,用户可以打开按钮。我使用ng-repeat来显示列表中的每个元素...... 然后,我试图只有一个我的开关按钮是强制性的,所以我使用了“必需”这个词......就像这样:

HTML:

<md-list-item ng-repeat="(key, value) in $ctrl.vegetables.fruits">
  <p>{{'vegetables.fruits.' + key | translate}}</p>
  <md-switch class="md-primary" ng-model="$ctrl.vegetables.fruits[key]" required>
<br/>
  <div  class="warning" ng-show="key === 'banana'" >Ce champ est obligatoire</div>
  </md-switch>
</md-list-item>

但如果我把它放在md-switch div中,我列表中的所有项目都是必需的...... 如果我逐个显示列表中的元素,我只需要一个元素..但我想保留ng-repeat。

所以这是我的问题:如何只强制我的项目之一?

由于

1 个答案:

答案 0 :(得分:0)

我认为这是你想要的:

<md-list-item >
  <p ng-repeat-start="(key, value) in $ctrl.vegetables.fruits">{{'vegetables.fruits.' + key | translate}}</p>
  <md-switch ng-repeat-end class="md-primary" ng-model="$ctrl.vegetables.fruits[key]" required>
<br/>
  <div  class="warning" ng-show="key === 'banana'" >Ce champ est obligatoire</div>
  </md-switch>
</md-list-item>