Rumah > Soal Jawab > teks badan
Jika saya berkongsi sekeping data dengan berbilang pengawal, adakah saya harus menyimpan data pada pengawal peringkat atas atau menggunakan kilang untuk menyimpan data yang perlu dikongsi Apakah yang akan berlaku jika saya menggunakan perkhidmatan?
为情所困2017-05-15 16:55:11
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.
滿天的星座2017-05-15 16:55:11
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
滿天的星座2017-05-15 16:55:11
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.