ng-app과 data-ng-app의 차이점은 무엇입니까?
현재 이 시작 튜토리얼 비디오를 보고 있습니다.angular.js
어느 순간(12'40인치 이후) 스피커는 다음과 같이 말합니다.ng-app
그리고.data-ng-app=""
내부적으로는 거의 동등하다<html>
태그, 태그도ng-model="my_data_binding
그리고.data-ng-model="my_data_binding"
그러나 화자는 html은 사용되는 속성에 따라 다른 검증자를 통해 검증된다고 말합니다.
두 가지 방법의 차이점을 설명해 주시겠습니까?ng-
에 접두사를 붙이다.data-ng-
프리픽스?
좋은 질문입니다.차이는 간단합니다.특정 HTML5 검증자가 다음과 같은 속성에 오류를 발생시키는 것 외에는 두 가지 사이에 전혀 차이가 없습니다.ng-app
단, 프리픽스 앞에 에러는 발생하지 않습니다.data-
,맘에 들다data-ng-app
.
질문에 답하려면data-ng-app
HTML을 좀 더 쉽게 검증하고 싶은 경우.
재미있는 사실:를 사용할 수도 있습니다.x-ng-app
같은 취지로.
각도는 요소의 태그와 속성 이름을 정규화하여 어떤 요소가 지시와 일치하는지 결정합니다.일반적으로 명령어는 대소문자를 구분하는 camelCase 정규화된 이름(ngModel 등)으로 나타냅니다.그러나 HTML은 대소문자를 구분하지 않기 때문에 일반적으로 DOM 요소(예: ng-model)에서 대시 구분 속성을 사용하여 DOM의 지시어를 소문자로 나타냅니다.
정규화 프로세스는 다음과 같습니다.
요소/속성 전면에서 x와 데이터를 제거합니다.:, - 또는 _ 구분 이름을 camelCase로 변환합니다.ngBind와 일치하는 요소의 예를 다음에 나타냅니다.
아래 서술에 의거한 모든 것이 유효한 지시사항이다.
1. ng-interface
2. ng: 삭제
3. ng_module
4. data-ng-interval
5. x-ng-ng-interval
다른 점은 관습이라는 사실에 있다.data-*
속성은 HTML5 사양에서 유효합니다.따라서 마크업을 검증할 필요가 있는 경우는, 그 마크업을 사용하는 것이 아니라,ng
특성.
단답:
ng-model
그리고.data-ng-model
동일하고 동등합니다!
왜요?
이유:
data-
접두사
HTML5 사양에서는 모든 커스텀아트리뷰트의 프리픽스가 다음과 같이 부가됩니다.data-
.이유: 둘 다
ng-model
그리고.data-ng-model
동일하고 동등합니다.
AngularJS 문서 - 정규화
각도는 요소의 태그와 속성 이름을 정규화하여 어떤 요소가 지시와 일치하는지 결정합니다.일반적으로 명령어는 대소문자를 구분하는 camelCase 정규화된 이름(예:ngModel
단, HTML은 대소문자를 구분하지 않기 때문에 DOM 요소에서는 보통 대시 구분 속성을 사용하여 DOM 내의 지시어를 소문자로 나타냅니다(예:ng-model
Strip 1. 트 1 1x-
★★★★★★★★★★★★★★★★★」data-
요소/속성 전면에서 확인할 수 있습니다.
. 2. 을 합니다.:
,-
「」_
- - - 허가된 이름camelCase
를 들면, 「」
다음 형식은 모두 동일하며 ngBind 디렉티브와 일치합니다.
<div ng-controller="Controller">
Hello <input ng-model='name'> <hr/>
<span ng-bind="name"></span> <br/>
<span ng:bind="name"></span> <br/>
<span ng_bind="name"></span> <br/>
<span data-ng-bind="name"></span> <br/>
<span x-ng-bind="name"></span> <br/>
</div>
페이지 HTML 을 유효하게 하려면 , ng- 대신에 data-ng- 를 사용할 수 있습니다.
브라우저에 서비스를 제공하기 전에 서버에서 html 또는 html-module을 조작하려면 ng-xx 속성만 사용하는 것이 아니라 data-ng-xx 속성을 사용하는 것이 가장 좋습니다.
- 이것은 html을 유효하게 합니다.즉, domdocument(php) 등의 html(서버 기반) 파서에서 사용할 수 있습니다.이러한 파서는 html 형식이 올바르지 않은 경우 자주 실패합니다.
- Angular는 속성을 정규화하지만 이 속성은 서버가 아닌 클라이언트에 있습니다.
언급URL : https://stackoverflow.com/questions/16589853/ng-app-vs-data-ng-app-what-is-the-difference
'programing' 카테고리의 다른 글
'string' 유형은 'inherit' | 'initial' | 'unset' | 'fixed' | 'absolute' | 'static' | 'relative' | 'sticky'에 할당할 수 없습니다. (0) | 2023.04.01 |
---|---|
MongoDB: 하나의 명령어로 여러 문서를 업데이트하려면 어떻게 해야 합니까? (0) | 2023.04.01 |
확산 인수는 태플 형식을 갖거나 rest 매개 변수로 전달되어야 합니다. React (0) | 2023.03.27 |
WooCommerce가 카트에서 프로그래밍 방식으로 삭제 (0) | 2023.03.27 |
Angular의 재사용 가능한 구성 요소JS (0) | 2023.03.27 |