angular.js - angularjs 用ng-reapt渲染的dom 怎么获取上面的属性
PHP中文网
PHP中文网 2017-05-15 17:13:44
0
2
645

angularjs 用ng-reapt渲染的dom 怎么获取上面的属性

PHP中文网
PHP中文网

认证高级PHP讲师

répondre à tous(2)
我想大声告诉你

Les données de vos attributs sont à l'origine recyclées, récupérez simplement les données directement. Ne pensez jamais à la méthode de jq

.
repeat-finish=renderFinish(item)
$scope.renderFinish=function(item){
  ...
  kit.log(item.id)
}
刘奇

Merci pour l'invitation, la méthode de @crazy4x est également OK. data-* Dans les scénarios d'application généraux, le framework MV* n'est pas utilisé et le proxy d'événements est utilisé pour éviter d'avoir à ajouter/supprimer manuellement des écouteurs lorsque les données de la liste changent. En ajoutant un écouteur au parent, puis en obtenant l'objet événement, puis en obtenant la valeur de l'attribut personnalisé de l'élément actuel dans la liste, l'exemple suivant fournit une autre méthode, à titre de référence uniquement.

<!DOCTYPE html>
<html lang="en" ng-app="myapp">
<head>
    <meta charset="UTF-8">
    <title>Angular Repeat-Done Demo</title>
    <script src="https://cdn.bootcss.com/angular.js/1.6.3/angular.min.js"></script>
</head>
<body ng-app="myapp">
<p ng-controller="AppCtrl">
    <h4>Users List</h4>
    <ul>
        <li ng-repeat="user in users" repeat-done="renderFinish($index)"> // user
            {{user.id}} - {{user.name}}
        </li>
    </ul>
</p>
<script type="text/javascript">
    var myapp = angular.module("myapp", [])
            .directive('repeatDone', function () { // 用于判断ng-repeat是否执行完成
                return function (scope, element, attrs) {
                    if (scope.$last) { // all are rendered
                        attrs.repeatDone && scope.$eval(attrs.repeatDone);
                    }
                }
            })
            .controller("AppCtrl", ['$scope', function ($scope) {
                $scope.users = [{
                    id: 1,
                    name: 'Lolo'
                }, {
                    id: 2,
                    name: 'Semlinker'
                }];

                $scope.renderFinish = function(index) { // user对象
                    console.log(index);
                };
            }])
</script>
</body>
</html>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal