Rumah  >  Artikel  >  hujung hadapan web  >  Bolehkah Perkhidmatan dan Pengawal AngularJS Berinteraksi dengan Kod Luaran?

Bolehkah Perkhidmatan dan Pengawal AngularJS Berinteraksi dengan Kod Luaran?

Linda Hamilton
Linda Hamiltonasal
2024-10-19 11:42:30897semak imbas

Can AngularJS Services and Controllers Interact with External Code?

Memanggil AngularJS daripada Kod Legacy

Anda berhasrat untuk menyepadukan AngularJS dengan aplikasi Flex warisan dengan melampirkan panggilan balik daripada apl Flex ke tetingkap DOM . Untuk mencapai matlamat ini, anda boleh membuat perkhidmatan yang boleh didengari oleh pengawal AngularJS. Tetapi bolehkah anda mengemas kini perkhidmatan dari luar AngularJS dan bolehkah pengawal menerima acara daripada perkhidmatan?

Penyelesaian:

Mengakses AngularJS daripada kod luaran adalah setanding dengan penyahpepijatan atau menyepadukannya dengan perpustakaan pihak ketiga. Begini cara berinteraksi dengan elemen DOM:

  • angular.element(domElement).scope(): Mendapat semula skop semasa untuk elemen.
  • angular.element(domElement).injector(): Memperoleh penyuntik apl semasa.
  • angular.element(domElement).controller(): Mendapatkan contoh ng-controller .

Menggunakan penyuntik, anda boleh mengakses sebarang perkhidmatan dalam aplikasi Angular. Begitu juga, daripada skop, anda boleh menggunakan mana-mana kaedah yang diterbitkan.

Ingat untuk membalut sebarang pelarasan model atau panggilan kaedah skop dalam $apply():

$scope.$apply(function(){
  // Perform model changes or method invocations on the Angular app here.
});

Atas ialah kandungan terperinci Bolehkah Perkhidmatan dan Pengawal AngularJS Berinteraksi dengan Kod Luaran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Menyelam ke dalam ReactjsArtikel seterusnya:Menyelam ke dalam Reactjs