Rumah  >  Soal Jawab  >  teks badan

angular.js - angularjs中相同的方法,如何做到触发只对当前元素有效。


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

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

membalas semua(2)saya akan balas

  • 習慣沉默

    習慣沉默2017-05-15 17:06:52

    Saya fikir anda harus menambah trek dengan $index apabila ng-repeat, dan masukkan $index ke toggle(). Isytihar tatasusunan myVar dengan panjang yang sama dengan panjang yang anda perlu ulangi Tetapkan nilai tatasusunan kepada benar dan gunakan ng-if="myVar[$index]" untuk memaparkannya pada permulaan.
    Apabila anda mengklik butang kembangkan dan kecilkan, togol($index) hanya menyongsangkan nilai kedudukan yang sepadan dalam tatasusunan.

    balas
    0
  • 仅有的幸福

    仅有的幸福2017-05-15 17:06:52

    Disebabkan anda belum menggunakan ng-repeat, ia tidak berfungsi Jika anda bertukar kepada ng-repeat, ia akan menjadi baik
    Selain itu, anda tidak perlu menulis togol, cuma ng-click="myVar=!myVar"

    balas
    0
  • Batalbalas