คู่มือนักพัฒนา AngularJS - แบบฟอร์มบอกว่ามีหลายรูปแบบและคำสั่งเกี่ยวกับรูปแบบและเขตข้อมูล สำหรับแต่ละคลาส CSS:
ng-valid
ng-invalid
ng-pristine
ng-dirty
ng-touched
ng-untouched
ความแตกต่างระหว่างpristine/dirty
และtouched/untouched
คืออะไร
คู่มือนักพัฒนา AngularJS - แบบฟอร์มบอกว่ามีหลายรูปแบบและคำสั่งเกี่ยวกับรูปแบบและเขตข้อมูล สำหรับแต่ละคลาส CSS:
ng-valid
ng-invalid
ng-pristine
ng-dirty
ng-touched
ng-untouched
ความแตกต่างระหว่างpristine/dirty
และtouched/untouched
คืออะไร
คำตอบ:
คู่มือผู้พัฒนา AngularJS - CSS คลาสที่ใช้โดย AngularJS
- @property {boolean} $ ไม่ถูกแตะต้อง True ถ้าการควบคุมยังไม่หายไป
- @property {boolean} $ แตะจริงถ้าการควบคุมเสียโฟกัส
- @property {boolean} $ pristine จริงถ้าผู้ใช้ไม่ได้มีปฏิสัมพันธ์กับการควบคุมเลย
- @property {boolean} $ สกปรกจริงถ้าผู้ใช้โต้ตอบกับตัวควบคุมแล้ว
$pristine
/ แจ้ง$dirty
ให้คุณทราบว่าผู้ใช้เปลี่ยนแปลงอะไรจริงๆ หรือไม่ในขณะที่$touched
/ $untouched
บอกให้คุณทราบว่าผู้ใช้เพิ่งเข้ามาเยี่ยมชมหรือไม่
สิ่งนี้มีประโยชน์มากสำหรับการตรวจสอบความถูกต้อง เหตุผล$dirty
ก็คือเพื่อหลีกเลี่ยงการแสดงคำตอบการตรวจสอบความถูกต้องจนกว่าผู้ใช้จะได้เยี่ยมชมการควบคุมบางอย่าง แต่โดยการใช้$dirty
พร็อพเพอร์ตี้ผู้ใช้จะไม่ได้รับข้อเสนอแนะการตรวจสอบความถูกต้องจนกว่าพวกเขาจะเปลี่ยนแปลงค่าจริง ดังนั้น$invalid
เขตข้อมูลจะไม่แสดงพรอมต์ผู้ใช้หากผู้ใช้ไม่เปลี่ยน / โต้ตอบกับค่า หากผู้ใช้เพิกเฉยต่อฟิลด์ที่จำเป็นต้องมีทุกอย่างดูเรียบร้อย
ด้วย Angular 1.3 และng-touched
ตอนนี้คุณสามารถตั้งค่าสไตล์เฉพาะบนตัวควบคุมได้ทันทีที่ผู้ใช้เบลอไม่ว่าพวกเขาจะแก้ไขค่าจริงหรือไม่
นี่คือCodePenที่แสดงความแตกต่างในพฤติกรรม
ในหนังสือ Pro Angular-6มีรายละเอียดดังนี้
ไม่ถูกต้อง : คุณสมบัตินี้จะส่งกลับจริงถ้าเนื้อหาขององค์ประกอบที่ไม่ถูกต้องและเท็จอย่างอื่น
pristine : คุณสมบัตินี้จะคืนค่าเป็นจริงหากเนื้อหาขององค์ประกอบไม่เปลี่ยนแปลง
เป็นมูลค่าการกล่าวขวัญว่าคุณสมบัติการตรวจสอบจะแตกต่างกันสำหรับรูปแบบและองค์ประกอบของแบบฟอร์ม (โปรดทราบว่าสัมผัสและไม่แตะต้องสำหรับเขตข้อมูลเท่านั้น):
Input fields have the following states: $untouched The field has not been touched yet $touched The field has been touched $pristine The field has not been modified yet $dirty The field has been modified $invalid The field content is not valid $valid The field content is valid They are all properties of the input field, and are either true or false. Forms have the following states: $pristine No fields have been modified yet $dirty One or more have been modified $invalid The form content is not valid $valid The form content is valid $submitted The form is submitted They are all properties of the form, and are either true or false.