angular.js - mekanisme pemuatan dan penyusunan angularjs
阿神
阿神 2017-05-15 17:11:14
0
2
588

Pertama sekali, mari kita bercakap tentang persekitaran teknikal semasa: angular1.6, ui-route, memerlukan Soalan:
1 pengawal berdaftar? Contohnya: Jika saya ingin mendapatkan lebar #id templat, saya mesti mempunyai $timeout. Jika tidak, undefine
akan muncul 2. Adakah kompilasi arahan tersuai dimuatkan sebelum templat? dimuatkan secara selari?
Ia agak mengelirukan, jadi saya memohon jawapan. Saya juga ingin mengucapkan terima kasih atas artikel dan penjelasan yang berkaitan!
Soalan tambahan: Adakah {{}} akan menukar jenis secara automatik kepada rentetan?
Terima kasih, terima kasih juga atas jawapannya

阿神
阿神

闭关修行中......

membalas semua(2)
淡淡烟草味

官方有详细解释,关于编译过程的介绍:

Kompilasi HTML berlaku dalam tiga fasa:

  1. $compile merentasi DOM dan sepadan dengan arahan.

    Jika pengkompil mendapati bahawa elemen sepadan dengan arahan, maka
    arahan ditambahkan pada senarai arahan yang sepadan dengan elemen DOM
    . Satu elemen mungkin sepadan dengan berbilang arahan.

  2. Setelah semua arahan yang sepadan dengan elemen DOM telah dikenal pasti,
    pengkompil mengisih arahan mengikut keutamaan mereka.

    Setiap fungsi kompilasi arahan dilaksanakan. Setiap fungsi kompil
    mempunyai peluang untuk mengubah suai DOM. Setiap fungsi penyusunan
    mengembalikan fungsi pautan. Fungsi ini terdiri daripada fungsi pautan
    "gabungan", yang menggunakan fungsi pautan
    yang dikembalikan setiap arahan.

  3. $compile memautkan templat dengan skop dengan memanggil gabungan
    fungsi pemautan dari langkah sebelumnya. Ini seterusnya akan memanggil
    fungsi memautkan arahan inpidual, mendaftarkan pendengar
    pada elemen dan menyediakan $watchs dengan skop kerana setiap
    arahan dikonfigurasikan untuk dilakukan.

Hasilnya ialah pengikatan langsung antara skop dan DOM. Jadi pada ketika ini, perubahan dalam model pada skop yang disusun akan ditunjukkan dalam DOM.

具体请题主详读 https://docs.angularjs.org/gu... 这篇关于compiler的文章.

洪涛
  1. Saya rasa urutannya sepatutnya seperti ini: muatkan templat dan pergi ke pengawal pada masa yang sama, mulakan data dalam pengawal, dan kemudian masukkan peringkat $digest untuk memaparkan templat. Oleh itu, anda mungkin tidak mendapat lebar #id templat semasa proses pemuatan pengawal.
    Tulis $masa tamat yang akan melaksanakan kod dalam tamat masa selepas $digest tamat dan mencetuskan $digest semula.

  2. Fasa penyusunan arahan tersuai sebenarnya menentukan struktur templat Fasa penyusunan boleh mengubah struktur templat.

Jika ada yang salah, sila betulkan saya dan bincang.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan