Аз съм AngularJS начинаещ и се опитвам да разбера какво class=ng-binding
прави в този пример:
<label ng-dblclick="editTodo(todo)" class="ng-binding">fghfgh</label>
Намерих го тук:
http://todomvc.com/architecture-examples/angularjs/#/
Използвам Chrome и инструменти за разработчици. Това е ъглова ключова дума? Не можах да го намеря в ръководството (http://docs.angularjs.org/api/ng.directive:ngBind)
Отговори:
36 за отговор № 1class="ng-binding"
се използва вътрешно от Angular. Например, погледнете ngBind
източник ние намираме този ред, който добавя класа и свързва свързването с него .data
:
element.addClass("ng-binding").data("$binding", attr.ngBind);
Ето защо тази линия на ъгловия източник (отбелязвайки двойните къдрици {{todo.title}}
води до ngBind
):
<label ng-dblclick="editTodo(todo)">{{todo.title}}</label>
Преведено е в това, което виждате в дебъгера:
<label ng-dblclick="editTodo(todo)" class="ng-binding">fghfgh</label>
Така class="ng-binding"
не е нещо, което трябва да използвате. Ще откриете, че Ъгловата често използва класове, коментари и други маркери, така че често ще видите такъв вид промяна между оригиналния html и ъгловите обработвани резултати.
5 за отговор № 2
От документи:
ng-binding
Употреба: ъглово прилага този клас към всеки елемент, който е прикрепен към a свързване на данни чрез ng-bind или {{}} къдрави скоби, например. (виж databinding ръководство)
Така че класата ng-binding
се прилага от ъглово динамично, за да може компилаторът да разбере, че елементът има свързано с него свързване на данни.
Като разработчик не трябва да се тревожим за това, освен ако не приложим някои стилове към тези класове.