ng-repeatคำสั่งAngularJS


ตัวอย่าง

เขียนหนึ่งส่วนหัวสำหรับแต่ละรายการในอาร์เรย์ระเบียน:

<body ng-app="myApp" ng-controller="myCtrl">

<h1 ng-repeat="x in records">{{x}}</h1>

<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
    $scope.records = [
        "Alfreds Futterkiste",
        "Berglunds snabbköp",
        "Centro comercial Moctezuma",
        "Ernst Handel",
    ]
});
</script>

</body>

ความหมายและการใช้งาน

คำng-repeatสั่งจะทำซ้ำชุดของ HTML ตามจำนวนที่กำหนด

ชุดของ HTML จะถูกทำซ้ำหนึ่งครั้งต่อรายการในคอลเล็กชัน

คอลเลกชันต้องเป็นอาร์เรย์หรือวัตถุ

หมายเหตุ:แต่ละอินสแตนซ์ของการทำซ้ำจะได้รับขอบเขตของตนเอง ซึ่งประกอบด้วยรายการปัจจุบัน

หากคุณมีคอลเลกชั่นของอ็อบเจ็กต์ng-repeatคำสั่งนี้เหมาะอย่างยิ่งสำหรับการสร้างตาราง HTML แสดงหนึ่งแถวของตารางสำหรับแต่ละอ็อบเจ็กต์ และข้อมูลตารางหนึ่งรายการสำหรับคุณสมบัติของอ็อบเจ็กต์แต่ละรายการ ดูตัวอย่างด้านล่าง


ไวยากรณ์

<element ng-repeat="expression"></element>

รองรับโดยองค์ประกอบ HTML ทั้งหมด


ค่าพารามิเตอร์

Value Description
expression An expression that specifies how to loop the collection.

Legal Expression examples:

x in records

(key, value) in myObj

x in records track by $id(x)


ตัวอย่างเพิ่มเติม

ตัวอย่าง

เขียนหนึ่งแถวของตารางสำหรับแต่ละรายการในอาร์เรย์ระเบียน:

<table ng-controller="myCtrl" border="1">
    <tr ng-repeat="x in records">
        <td>{{x.Name}}</td>
        <td>{{x.Country}}</td>
    </tr>
</table>

<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
    $scope.records = [
       {
            "Name" : "Alfreds Futterkiste",
            "Country" : "Germany"
        },{
            "Name" : "Berglunds snabbköp",
            "Country" : "Sweden"
        },{
            "Name" : "Centro comercial Moctezuma",
            "Country" : "Mexico"
        },{
            "Name" : "Ernst Handel",
            "Country" : "Austria"
        }
    ]
});
</script>

ตัวอย่าง

เขียนหนึ่งแถวของตารางสำหรับแต่ละคุณสมบัติในวัตถุ:

<table ng-controller="myCtrl" border="1">
    <tr ng-repeat="(x, y) in myObj">
        <td>{{x}}</td>
        <td>{{y}}</td>
    </tr>
</table>

<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
    $scope.myObj = {
        "Name" : "Alfreds Futterkiste",
        "Country" : "Germany",
        "City" : "Berlin"
    }
});
</script>