■ Front-End ■/AngularJs

[AngularJS] ng-repeat로 반복해서 표시해 보자. #2

한길(One Way) 2023. 2. 22.
SPA 작성을 쉽게 하는 자바스크립트 웹 프레임워크이다.

이번에는 좀 더 복잡한 형태의 값을 표시하는 예제를 구현해 본다. div 태그에 ng-init 속성을 만들고 값을 미리 정의한다. names라는 이름의 name과 desc 속성을 가진 객체 배열을 정의하였다.

<div ng-app="" ng-init="names=[ {name:'Joo',desc:'Jesus'}, {name:'Han',desc:'One'}, {name:'Gil',desc:'Way'}]">

 

 

ng-init에 정의한 names를 반복해서 표시하려면 태그에 ng-repeat 속성을 사용하여 반복을 지정한다. 아래와 같이 반복할 대상을 in으로 선언하고 그것을 표시하고자 하는 곳에 Angular Expression으로 정의한다.

 

<li ng-repeat="x in names">{{ x.name + ' ==> ' + x.desc }}</li>

<p ng-repeat="y in names">{{ y }}</p>

<tr ng-repeat="z in names">

 

예제코드

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>AngularJS</title>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
</head>
 
<body>
      <div ng-app=""
          ng-init="names=[ {name:'Joo',desc:'Jesus'}, {name:'Han',desc:'One'}, {name:'Gil',desc:'Way'}]">
              <p>Name :</p>
              <ul>
                    <li ng-repeat="x in names">{{ x.name + ' ==> ' + x.desc }}</li>
              </ul>
              <hr>
              <p ng-repeat="y in names">{{ y }}</p>
              <hr>
              <table width="300" border="1">
                    <tr ng-repeat="z in names">
                           <td>{{ z.name }}</td>
                           <td>{{ z.desc }}</td>
                    </tr>
              </table>
       </div>
       <hr>
</body>
</html>

 

ng-init으로 정의한 목록이 아래의 화면과 같이 자동으로 반복하여 표시된다.

 
 
728x90

댓글