12
AngularJS: วิธีรันโค้ดเพิ่มเติมหลังจาก AngularJS แสดงผลเทมเพลตแล้ว?
ฉันมีเทมเพลต Angular ใน DOM เมื่อคอนโทรลเลอร์ของฉันได้รับข้อมูลใหม่จากบริการมันจะอัพเดตโมเดลในขอบเขต $ และแสดงเทมเพลตอีกครั้ง ดีมากจนถึงตอนนี้ ปัญหาคือฉันต้องทำงานพิเศษหลังจากเทมเพลตถูกแสดงอีกครั้งและอยู่ใน DOM (ในกรณีนี้คือปลั๊กอิน jQuery) ดูเหมือนว่าจะมีเหตุการณ์ที่ต้องฟังเช่น AfterRender แต่ฉันไม่พบสิ่งใดเลย บางทีคำสั่งอาจเป็นหนทางไป แต่ดูเหมือนว่าจะยิงเร็วเกินไป นี่คือ jsFiddle ที่สรุปปัญหาของฉัน: Fiddle-AngularIssue == UPDATE == จากความคิดเห็นที่เป็นประโยชน์ฉันจึงเปลี่ยนไปใช้คำสั่งเพื่อจัดการการจัดการ DOM และใช้โมเดล $ watch ในคำสั่ง อย่างไรก็ตามฉันยังคงมีปัญหาพื้นฐานเดียวกันอยู่ โค้ดที่อยู่ในเหตุการณ์การเฝ้าดู $ เริ่มก่อนที่จะรวบรวมและแทรกเทมเพลตใน DOM ดังนั้นปลั๊กอิน jquery จะประเมินตารางที่ว่างอยู่เสมอ ที่น่าสนใจถ้าฉันลบการเรียกแบบ async สิ่งที่ใช้งานได้ดีก็เป็นขั้นตอนในทิศทางที่ถูกต้อง นี่คือ Fiddle ที่อัปเดตของฉันเพื่อสะท้อนการเปลี่ยนแปลงเหล่านี้: http://jsfiddle.net/uNREn/12/
182
javascript
jquery
dom
angularjs