Angular2 + การไหลของข้อมูล:
ใน Angular ข้อมูลสามารถไหลระหว่างโมเดล (คอมโพเนนต์คลาส ts.file) และมุมมอง (html ของคอมโพเนนต์) ตามลักษณะต่อไปนี้:
- จากโมเดลสู่มุมมอง
- จากมุมมองไปยังแบบจำลอง
- กระแสข้อมูลในทั้งสองทิศทางยังเป็นที่รู้จัก2 ข้อมูลวิธีที่มีผลผูกพัน
ไวยากรณ์:
รุ่นที่จะดู:
<input type="text" [ngModel]="overRideRate">
รูปแบบนี้เป็นที่รู้จักกันเป็นสถานที่ให้บริการที่มีผลผูกพัน ตอนนี้หากoverRideRate
คุณสมบัติของช่องป้อนข้อมูลเปลี่ยนมุมมองโดยอัตโนมัติจะได้รับการอัปเดต อย่างไรก็ตามหากมุมมองอัปเดตเมื่อผู้ใช้ป้อนตัวเลขoverRideRate
คุณสมบัติจะไม่ถูกอัปเดต
ดูรุ่น:
(input)="change($event)" // calling a method called change from the component class
(input)="overRideRate=$event.target.value" // on input save the new value in the title property
สิ่งที่เกิดขึ้นที่นี่คือเหตุการณ์ถูกทริกเกอร์ (ในกรณีนี้คือเหตุการณ์อินพุต แต่อาจเป็นเหตุการณ์ใดก็ได้) จากนั้นเราสามารถเรียกใช้เมธอดของคลาสคอมโพเนนต์หรือบันทึกคุณสมบัติโดยตรงในคุณสมบัติคลาส
การผูกข้อมูล 2 ทาง:
<input [(ngModel)]="overRideRate" type="text" >
ไวยากรณ์ต่อไปนี้ใช้สำหรับการผูกข้อมูลแบบ 2 ทาง โดยพื้นฐานแล้วมันเป็นน้ำตาลที่เป็นประโยคสำหรับทั้งสอง:
- รูปแบบการผูกเพื่อดู
- มุมมองที่เชื่อมโยงกับโมเดล
ตอนนี้มีการเปลี่ยนแปลงบางอย่างในชั้นเรียนของเราสิ่งนี้จะสะท้อนถึงมุมมองของเรา (โมเดลที่จะดู) และเมื่อใดก็ตามที่ผู้ใช้เปลี่ยนอินพุตโมเดลจะถูกอัปเดต (ดูเป็นโมเดล)
[ngModel]
- เป็นการผูกคุณสมบัติเท่านั้นไม่ใช่การผูกแบบสองทางoverRideRate
ดังนั้นการป้อนค่าใหม่จะไม่ปรับปรุง