angular.js - Angular的controller和service、factory的问题
怪我咯
怪我咯 2017-05-15 16:53:11
0
3
542

如果我多个controller共享一份数据,是在某个比较上层的控制器上保存数据,还是用factory保存这个需要共享的数据,如果用service会怎么样。

怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(3)
为情所困

Soalan ini bergantung pada seberapa kukuh perkaitan perniagaan data dalam tahap skop anda apabila anda menggunakan data tersebut.

Kuat, maksudnya, anda sangat yakin apabila skop tertentu menggunakannya, anda pasti boleh mencari skop ibu bapa tertentu dengan mencari ke atas, kemudian anda boleh menggunakan warisan skop untuk berkongsinya. Walau bagaimanapun, adalah disyorkan untuk menggunakan sintaks controller as untuk memberikan setiap pengawal ruang nama yang unik untuk mengelakkan pertindihan objek. Malah, anda juga boleh menyimpan data ini dalam $rootScope untuk berkongsinya secara global (tetapi tidak disyorkan, kerana lebih ringan $rootScope, lebih baik), atau anda boleh mempunyai pengawal global peringkat atas untuk menyimpannya .

Ia tidak kuat, yang bermaksud anda tidak boleh menentukan bila dan di mana data ini akan digunakan, jadi gunakan suntikan pergantungan. Untuk data tulen, disyorkan untuk menggunakan module.value (data pembolehubah) atau module.constant (data tidak boleh ubah Sudah tentu, anda juga boleh menggunakan module.factory untuk mengembalikan objek (ini sama dengan module.value). module.service sering digunakan untuk mengembalikan pembina, yang boleh anda gunakan untuk menjana contoh objek yang berbeza (berbeza daripada perkhidmatan tunggal lain).

Malah, module.value/constant/factory/service adalah semua varian (gula sintaksis) module.provider Baca bab tentang suntikan ketergantungan dan perkhidmatan dalam dokumentasi rasmi dan anda akan memahami segala-galanya.

滿天的星座

Perkhidmatan penggunaan secara amnya digunakan untuk menyimpan data Kilang biasanya digunakan untuk memanggil pelbagai perkhidmatan~ atau memulangkan kaedah, sebenarnya, mereka merasakan perbezaannya pergi Lihat ini atau ini

滿天的星座

Sebenarnya, saya tidak menemui sebarang perbezaan antara kilang dan perkhidmatan Jika anda suka objek js, maka pilih yang pertama Jika anda suka js oop, kemudian gunakan perkhidmatan. . . Satu terjemahan menerangkannya dengan cara ini.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!