기본 콘텐츠로 건너뛰기

Angular JS 용어 정리




  • Html
  • JavaScript
  • CSS
<div ng-controller="TodoCtrl">
    <span>{{remaining()}} of {{todos.length}} remaining</span>
    [ <a href="" ng-click="archive()">archive</a> ]
    <ul class="unstyled">
        <li ng-repeat="todo in todos">
            <input type="checkbox" ng-model="todo.done">
            <span class="done-{{todo.done}}">{{todo.text}}</span>
        </li>
    </ul>
    <form ng-submit="addTodo()">
        <input type="text" ng-model="todoText"  size="30" placeholder="add new todo here">
        <input class="btn-primary" type="submit" value="add">
    </form>
</div>

해당 글은 angular js 에서 예제를 갖고 왔다

여기서 angular의 기본 문법을 보자

1.ng-controller:컨트롤러 선언
  ng-click:클릭하면 동작
<div ng-controller="TodoCtrl">
    이 안에 있는 Angular 엘리먼트들은 스크립트에서 "TodoCtrl"로
    선언한 메소드를 컨트롤러로 사용하겠다고 선언을 한것이다.
</div>

2.ng-repeat:모델 선언
<li ng-repeat="todo in todos">
    todo라는 js안에서 todos라는 json형태의 내용들을 사용할 수 있게 된다.
    <input type="checkbox" ng-model="todo.done">
    ng-model 이것은 todos안에 있는 done이라는 변수를 사용하게 되는 것이다.
<li>

3.ng-submit:submit으로 동작
<form ng-submit="addTodo()">
    <input type="text" ng-model="todoText"  size="30" placeholder="add new todo here">
    <input class="btn-primary" type="submit" value="add">
    여기서 중요한건 angularJS에서는 submit으로 js로 넘겨서 ng-model todos의 모델을 사용함으로
    모델을 "todoText"로 모델로 선언해둔 곳을 통하여 addTodo로 보내서 하나씩 추가하게 되는 방식이다.
</form>


이 글만 보더라고 Angular JS자체에서 MVC패턴을 사용할 수 있다는 큰 장점을 볼 수 있을것이다.

앞으로 계속 써봐야 알겠지만 이 프레임워크를 통하여 script의 MVC패턴을 간결하게 표현할 수 있다는거에 신기하면서

앞으로 익숙해진다면 유지보수에서 보기 편하고(단 Angular JS를 알고있는 사람한에서) 파워풀한 소스가 될 것 같다.


실 작동(reality work) URL[http://jsfiddle.net/Kwangheum/8vDMT/1/]

댓글

이 블로그의 인기 게시물

Intellij에서 Eclipse 프로젝트 import시 설정해줘야 할 것들

요즘 여유가 좀 생겨서 지금까지 Eclipse만 쓰다가 사람들이 하도 Intellij가 좋다하길래 얼마나 좋길래 하고 써보려고 하다가 프로젝트를 import 시키던중 좀 적어두면 좋을거같아서 적어보려고한다 !! 다음에 잊지 않기 위해... 1. Settings > Build, Execution, Deployment > Compiler > Java Compiler 버전 맞추기 2. 상단에 설정 추가 하는부분을 눌러 톰켓을 생성해준다. 꼭 넣어줘야할 부분은 VM options에  -Dfile.encoding=utf-8  한글 깨짐 방지다. (그리고 intellij 설치 된 곳에 bin폴더 안에 vmoptions 확장자를 갖은 녀석의 맨 마지막 줄에도 넣어준다!) 3. project structure > Project Settings > Project 그리고 java버전에 맞춰서 project language level도 맞춰줘야합니다! 4. project structure > Project Settings > Modules - Sources 여기도 project language level도 맞춰줘야합니다! 5. project structure > Project Settings > Modules - Dependencies 들어가서 + 단추를 누르고 Library..를 누르고 Tomcat 추가! 이러면 이클립스에서 갖고온 프로젝트가 잘 동작합니다!! 아 그리고 .settings, .classpath, .project 는 필요 없어지므로 삭제해도 무방합니다 ps. 사실... 이클립스 쓰면서 불편한건 하나도 없었어요... 그리고 아직은 단축키라던지 익숙하지 않아서 이클립스가 더 편하네요... 사실 이클립스 단축키를 인텔리제이와 동일하게 할 수 있지만.... 인텔리제이의 기본 설정만 써...

Ext JS 4.2 트리 노드 추가 및 스크롤 이동

Ext.require([ '*' ]); Ext.onReady( function (){      var addButton = Ext.create( 'Ext.Button' , {         text: '노드 추가(Add Node)' ,         scale: 'large' ,         listeners: {         el: {             click: function () {          var thisNode =  Ext.getCmp( 'xAxisTreeUse' ).getRootNode().appendChild({                      "text":"노드 이름 (Node name) "         });                 Ext.getCmp( " tree " ).selectPath(thisNode.getPath());             }         }     });      var   store = Ext.create( 'Ext.data.TreeStore' , {             id:  'store' ,     ...