angular.js - angularjs中相同的方法,如何做到触发只对当前元素有效。
为情所困
为情所困 2017-05-15 17:04:52
0
2
548


大图里三个部分是从后台读取数据然后绑定用ng-repeat出来的,要实现的功能是点击各个部分最右边的小角标,当前部分能展开或者收起,但是由于ng-repeat,连方法名和ng-show='myVar'都是一样样的,会导致点任何一个角标整片收缩或展开;
这段代码是要ng-repeat的底代码,还未做修改成,

$scope.myVar=false;
$scope.toggle=function(){
    this.myVar=!this.myVar;
}
为情所困
为情所困

répondre à tous(2)
習慣沉默

Je pense que vous devriez ajouter track by $index lors de ng-repeat et transmettre $index dans toggle(). Déclarez un tableau myVar avec la même longueur que la longueur que vous devez répéter. Définissez les valeurs du tableau sur true et utilisez ng-if="myVar[$index]" pour les afficher au début.
Lorsque vous cliquez sur le bouton développer et réduire, toggle($index) inverse simplement la valeur de la position correspondante dans le tableau.

仅有的幸福

Parce que vous n'avez pas encore utilisé ng-repeat, cela ne fonctionne pas. Si vous passez à ng-repeat, tout ira bien
De plus, vous n'avez pas besoin d'écrire une bascule, juste. ng-click="maVar=!maVar"

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!