ng-required
ng-pattern
지침을 사용하여 angularjs의 양식 제출을 처리하고 기본 제출 동작을 차단하고 서버로 데이터를 보내기 전에 사용자 정의 확인 로직을 활성화하십시오. FormController
ng-submit
가 있습니다). 이를 통해 Angular의 부모-자식 양식 상속을 활용하여 모든 아동 양식이 유효 한 경우에만 부모 양식이 유효 할 수 있습니다. 이 튜토리얼에서는 간단한 제품 검토 화면 (현재 응용 프로그램의 주요 구성 요소를 강조 표시)을 작성합니다. 우리는 각각 고유 한 지침을 갖춘 두 가지 제품을 갖게되며 각 제품에는 고유 한 검증 규칙이 있습니다. 간단한 체크 아웃 버튼이 있으므로 두 양식 모두 유효합니다. 명령에 대한
<form></form>
지시문은 AngularJS의 HTML 컴파일러 ()를 통해 실행되고 DOM에 연결된 HTML 코드의 조각입니다. 컴파일러는 DOM을 가로 지르고 다른 등록 지시서를 사용하여 객체로 변환 할 수있는 구성 요소를 찾는 데 책임이 있습니다. 지시문은 고립 된 범위 내에서 작동하며 자신의 견해를 유지합니다. 응용 프로그램 전체에서 공유 할 수있는 재사용 가능한 구성 요소를 용이하게하는 강력한 도구입니다. 빠른 검토를 보려면이 기사 또는 AngularJS 문서를 확인하십시오. ngRepeat
지시문은 우리의 기본 문제를 두 가지 방법으로 해결합니다. 첫째, 각 인스턴스에는 고립 된 범위가 있습니다. 두 번째로, 서명기는 앵글 ngForm
지시를 사용하여 양식 요소를 인식합니다. 이 내장 지침을 사용하면 여러 중첩 형식 요소가 name에 대한 선택적 FormController
속성을 수락하고 양식 개체를 반환 할 수 있습니다.
>
사전 제작 된 검증 메소드 ngForm
FormController
및 기타 유효성 검사기가 포함됩니다. 그들은 거의 모든 HTML5 입력 유형을 이해하고 조작하도록 만들어졌으며 크로스 브라우저 호환입니다.
min
max
속성을 설정하지 마십시오. 이렇게하면 앵귤러가 양식이 왕복 방식으로 제출되지 않도록 노력하지 못하게됩니다. required
<code class="language-html"><input type="text" ng-model="size" ng-required="true" novalidate> <span ng-show="myForm.size.$error.required"> Size: The value is required! </span></code>사용자 정의 검증 메소드
ngRequired
novalidate
를 주입해야합니다. 자세한 내용은 AngularJS 문서를 컨설팅하여 찾을 수 있습니다.
컨트롤러를 만듭니다가 포함됩니다.및
이제 응용 프로그램을 시작할 수 있습니다. 여기에서 컨트롤러 코드의 개요를 찾을 수 있습니다. action
컨트롤러는 사물의 중심에있을 것입니다. 그것은 몇 가지 책임이 있습니다. 그보기는 라는 양식 요소를 가지고 있으며, 하나의 속성 만 가지고 있으며, 그 방법에는 ,
컨트롤러 속성
메소드 : regis
가 호출되면 a 및 명령 인스턴스화에서 생성 된 고유 한 지침 ID가 전달됩니다. 이 방법은 양식 범위를 부모 에 추가합니다.
서비스를 사용하여 탐색하는 것이 좋습니다.
이 방법은 Angular의 능력을 사용하며 자식 형태는 부모 형태를 무효화 할 수 있습니다. 부모 양식은 속성은 사실이어야합니다. 우리의 지침을 만듭니다
- 요소 항목에 액세스하는 데 사용됩니다. 할당 된 요소 내의 - 인스턴스화 지침의 동일한 태그에서 속성에 액세스하는 데 사용됩니다.
- 외부 컨트롤러 종속성이 존재하면 링크 함수에 사용할 수 있습니다. 이들은 지침 객체의 매개 변수에 나열된 함수와 동일합니다. )을 무효화하고 다른 필드 레벨 오류를 설정하는 데 사용됩니다. 데모에서는 에 연결되어 유효성을 설정합니다.
in 위의 는 angular의 ng-repeat 검증기에 의해 시행되는 검증 모드를 설정합니다. 위의 필드는 각도에 의해 구축 된
FAQ
AngularJS에서 사용자 정의 양식 기반 지시문을 작성하려면 함수를 사용하여 새로운 지침을 정의하는 것이 포함됩니다. 지시문에 지침의 옵션 개체를 생성하는 이름과 공장 함수를 지시해야합니다. 이 객체는 , ,
지침은 입력, 선택, 텍스트 영역 또는 사용자 정의 양식 컨트롤을 스코프의 속성에 바인딩합니다. 모델과 뷰 사이에 양방향 데이터 바인딩을 제공합니다. 즉, 입력 필드의 변경 사항은 모델을 자동으로 업데이트하고 그 반대도 마찬가지입니다.
<code class="language-html"><input type="text" ng-model="size" ng-required="true" novalidate>
<span ng-show="myForm.size.$error.required">
Size:
The value is required!
</span></code>
이 속성은 양식의 전반적인 유효성의 부울 상태를 유지하는 데 사용됩니다. 우리는이 속성을 사용하여 체크 아웃 버튼을 클릭 한 후 상태를 비활성화합니다. <code class="language-javascript">$scope.formsValid = false;</code>
이 메소드는 확인을 수행하는 백엔드 서버와 조정하는 데 사용됩니다. 사용자가 컨텐츠를 편집 할 때 호출되며 추가 확인이 필요합니다. 개념적으로, 우리는 외부 커뮤니케이션을 수행하도록 지시를 허용하지 않습니다. registerFormScope
FormController
서비스를 사용하면 성공 및 실패 상태가있는 인터페이스를 준수 할 수 있습니다. "편집"과 "저장"사이의 응용 프로그램 인터페이스의 특성은 모델 데이터의 편집에 따라 다릅니다. 사용자가 입력을 시작할 때 모델 데이터가 즉시 업데이트된다는 점에 유의해야합니다. FormController
메소드 : 체크 아웃 <code class="language-javascript">$scope.registerFormScope = function (form, id) {
$scope.parentForm['childForm'+id] = form;
};</code>
$q
격리 명령의 범위
에서 발생하는 업데이트가 기본 컨트롤러로 전파되도록합니다. FormController
객체 : 제품
이 개체에는 구매중인 제품에 대한 정보가 포함되어 있습니다. 우리의 데모는 속성이 몇 개있는 비교적 작은 물체를 사용합니다. 우리 팀의 실제 응용 프로그램에는 응용 프로그램에서 결정을 내릴 수있는 많은 정보가 있습니다. 확인되는 컨텐츠의 컨텍스트를 제공하기 위해 명령어 링크
- 각 지침 인스턴스에 대해 생성 된 분리 범위에 액세스하는 데 사용됩니다.
validateChildForm
함수에서 요소를 업데이트하고 수정하는 것이 안전합니다. postLink
postLink
모든 DOM 리스너를 첨부하고보기 요소로 DOM을 업데이트 할 책임이 있습니다.
scope
랩핑 메소드 iElement
의 목적은 postLink
를 상위 컨트롤러로 보내는 것입니다. 새로 생성 된 양식을 의 어린이 형식으로 설정할 수 있습니다. iAttrs
require
parentForm
필드에서 간단한 후 검사를 사용하며 실패의 원인을 반환하지 않습니다. amount
의 거부는 응용 프로그램이 필요로하는 것만 큼 복잡하거나 간단 할 수 있습니다. validateChildForm
약속이 성공적으로 반환되면 명령은 형식의 필드의 유효성을 설정해야합니다. 코드는 또한 이전에 식별 된 서버 오류를 지우야합니다. 이렇게하면 지침이 사용자에게 잘못된 오류를 제공하지 않도록합니다. 모든 서브 형태가 유효하다면 $setValidity
parentForm
우리의 견해를 설정 <code class="language-html"><input type="text" ng-model="size" ng-required="true" novalidate>
<span ng-show="myForm.size.$error.required">
Size:
The value is required!
</span></code>
ng-if
지시문을 사용하여 표현식을 평가하고, 사실이라면 필드는 비활성화됩니다. FormController
<code class="language-javascript">$scope.formsValid = false;</code>
우리 팀은 최신 앱을 구축 할 때 많은 것을 배웠습니다. 아버지 아들 형태 관계를 이해하면 의견 화면을 단순화 할 수 있습니다. 지침을 사용하면 어떤 상황에서도 사용할 수있는 양식을 개발하고 재사용 가능한 코드를 홍보 할 수 있습니다. 이 지침을 통해 우리는 코드를 단위 테스트하여 양식이 예상대로 작동하는지 확인할 수 있습니다. 우리의 응용 프로그램은 생산 중이며 10 만 명 이상의 주문에 기여했습니다.
Angularjs의 양식 기반 지침은 양식의 사용자 입력을 관리하고 검증하는 데 중요한 역할을합니다. 새로운 사용자 정의 위젯 역할을하는 사용자 정의 HTML 태그를 만들 수있는 방법을 제공합니다. 또한 응용 프로그램에 기능을 추가하는 방식으로 DOM을 조작 할 수 있습니다. 이 지침은 애플리케이션 전반에 걸쳐 일반적인 기능을 캡슐화하고 재사용하려는 경우 특히 유용합니다.
옵션은 HTML에서 지시문이 호출되는 방법을 지정하는 데 사용됩니다.
AngularJS는 , , , 등을 포함하여 양식 검증에 대한 내장 지침을 제공합니다. 이 지침은 양식 입력에 유효성 검사를 추가하여 양식을 제출하기 전에 사용자 입력이 특정 기준을 충족하도록합니다. 보다 복잡한 검증 요구 사항에 대한 사용자 정의 검증 지침을 만들 수도 있습니다. .directive
restrict
Angularjs의 > template
는 양식 및 제어 상태를 추적하고 유효성을 확인하고 양식을 재설정하는 방법을 제공합니다. 양식 지침 내에서 자동으로 제공되며 컨트롤러, 기타 지침 또는 서비스에 주입 할 수 있습니다. scope
link
AngularJS의 restrict
지침을 사용하면 양식을 제출할 때 사용자 정의 동작을 지정할 수 있습니다. 를 사용하여 양식의 제출 이벤트를 처리하기 위해 JavaScript 코드를 작성하는 대신. 이는 양식이 유효하지 않은 경우 기본 양식 제출 동작을 방지 할 때 특히 유용합니다.
in 에서 의 주요 차이점은 다른 형태로
ng-required
가 중첩 될 수 있다는 것입니다. 이를 통해 관련 입력을 함께 그룹화하여 하위 형태로 검증 할 수 있습니다. 반면에 표준 ng-pattern
지침은 중첩을 지원하지 않습니다. ng-minlength
ng-maxlength
angularjs의 ng-model
지침을 사용하면 사용자가 입력을 변경할 때 사용자 정의 동작을 지정할 수 있습니다. 이 지침은 사용자가 양식을 제출하기를 기다리는 대신 입력 또는 선택을 완료 한 직후에 무언가를 수행하려는 경우 유용합니다.
ng-change
또는 파이프 라인을 사용하여 사용자 정의 유효성 검사 로직을 추가 할 수 있습니다.
위 내용은 AngularJS에서 양식 기반 지시를 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!