cari

Rumah  >  Soal Jawab  >  teks badan

angular.js - fungsi pautan arahan bersarang ng-repeat tidak dilaksanakan

http://codepen.io/whb/pen/wzjWYv

Semasa permulaan, anda boleh pergi ke fungsi pautan untuk memproses data asal sebelum memaparkannya

Selepas mengklik muat semula

Saya benar-benar tidak faham bahawa selepas data dalam ng-repeat dimuat semula, arahan bersarang tidak melaksanakan fungsi pautan saya mohon bimbingan

Kod adalah seperti berikut:

(function() {
  'use strict';
  var app = angular.module('plunker', []);
  app.controller('MainCtrl', function($scope) {
    $scope.list = [{
      name: "张三",
      age: 23
    }, {
      name: "李四",
      age: 63
    }];
    //刷新按钮
    $scope.load = function() {
      $scope.list = [{
        name: "张三1",
        age: 23
      }, {
        name: "李四1",
        age: 63
      }];
    };
  });
  app.directive('item', function() {
    return {
      restrict: 'A',
      template: "<p>姓名:</p>  <p>{{ item.name }}</p>  <p>昵称:</p>  <p>{{ item.nickName }}</p>  <p>年龄:</p>  <p>{{item.age}}</p>",
      scope: {
        item: "=",
      },
      link: function(scope, element, attrs) {
        scope.item.nickName = scope.item.name + "nick";
        console.log(scope.item);
      }
    }
  });
})();
<p ng-app="plunker">
  <p ng-controller="MainCtrl"  style="text-align: center;">
    <p >
      <p ng-repeat="item in list track by $index" class="items-warp">
        <p item="item" class="row"></p>
      </p>
    </p>
    <button ng-click="load()">刷新 </button>
  </p>
</p>
怪我咯怪我咯2779 hari yang lalu577

membalas semua(1)saya akan balas

  • 为情所困

    为情所困2017-05-15 17:09:38

    Saya akan beritahu pendapat saya, tetapi mungkin tidak betul.

    Sebabnya harus disebabkan oleh trek anda oleh sintaks pada ng-repeat.

    Dokumen rasmi mengatakan bahawa ngRepeat mengesan sama ada viewModel yang sepadan telah berubah berdasarkan $watchCollection Menambahkan runut oleh adalah bersamaan dengan melampirkan syarat baharu pada mekanisme pengesanan ini Apabila anda mengklik muat semula untuk kali kedua, ngRepeat mengesan sama ada viewModel yang sepadan telah berubah berdasarkan on track by. Pertimbangan yang diperoleh daripada syarat sebenarnya tidak memerlukan pemaparan semula Dom, jadi arahan yang anda tentukan tidak akan disusun lagi Kaedah pautan hanya dipanggil selepas penyusunan, jadi kaedah pautan tidak boleh dipanggil.

    Analisis penyusunan dan pautan: portal

    balas
    0
  • Batalbalas