1. Tahap Mulai
Setiap orang harus tahu bahwa ketika browser memuat halaman HTML, pertama -tama akan menguraikan halaman HMTL ke dalam pohon DOM, dan kemudian memuat setiap node elemen di pohon DOM satu per satu. Kita dapat memperlakukan AngularJS sebagai perpustakaan JS yang mirip dengan jQuery. Kami memperkenalkannya ke HTML melalui tag <script>. Pada saat ini, Angular akan menjadi simpul DOM biasa yang menunggu browser untuk menguraikan. Ketika browser mem -parsing node ini dan menemukan bahwa itu adalah file JS, browser akan berhenti mem -parsing node DOM yang tersisa dan mulai mengeksekusi JS ini (mis. Angular.js). Pada saat yang sama, Angular akan menyiapkan pendengar acara untuk mendengarkan acara domContentload browser. Ketika Angular mendengarkan acara ini, aplikasi sudut akan dimulai.
2. Tahap Inisialisasi
Setelah Angular dimulai, ia mencari arahan NG-APP, kemudian menginisialisasi serangkaian komponen yang diperlukan (mis. $ Injektor, layanan $ kompilasi, dan $ rootscope), dan kemudian mulai mem-parsing pohon DOM lagi.
3. Kompilasi dan tautan
Layanan $ kompilasi menemukan elemen DOM dengan instruksi yang dinyatakan dengan melintasi pohon DOM. Saat menemukan elemen DOM dengan satu atau lebih instruksi, itu mengurutkan instruksi (berdasarkan prioritas instruksi) dan kemudian menggunakan layanan $ injector untuk menemukan dan mengumpulkan fungsi kompilasi dari instruksi dan menjalankannya.
Setelah metode kompilasi setiap node dijalankan, layanan $ Compile akan menghubungi fungsi tautan. Fungsi tautan ini menetapkan pemantauan untuk instruksi yang terikat pada ruang lingkup tertutup. Perilaku ini menciptakan pandangan langsung.
Akhirnya, setelah layanan $ kompilasi selesai, runtime AngularJS siap.
4. Tahap Operasi
Angular menyediakan loop acara sendiri. Instruksi itu sendiri mendaftarkan pendengar acara, jadi ketika acara dipicu, fungsi instruksi akan berjalan dalam loop $ digest AngularJS. Loop $ Digest akan menunggu daftar ekspresi $ Watch. Ketika perubahan model terdeteksi, fungsi $ watch akan dipanggil, dan kemudian daftar $ watch dilihat lagi untuk memastikan bahwa tidak ada model yang telah diubah.
Setelah loop $ Digest stabil dan tidak ada perubahan potensial yang terdeteksi, proses eksekusi meninggalkan konteks sudut dan biasanya kembali ke browser, dan DOM akan diberikan di sini.
Gambarlah langkah -langkah kunci dari proses di atas ke dalam grafik, sebagai berikut:
Di atas adalah pengantar terperinci untuk proses eksekusi AngularJS. Kami akan terus mengatur informasi yang relevan di masa depan. Terima kasih atas dukungan Anda untuk situs web ini.