我有一個對象,其中包含我的應用程序啓動時需要加載的一些數據。一旦它被加載,我需要能夠在我的應用程序的多個地方重用。如何防止在angularJS中反覆加載相同的數據
這樣做的最好方法是什麼?
現在我有一個工廠,我注入到我的控制器,我拉數據,問題是,我正在做數據拉多次。
只有當我加載應用程序時,拉動數據的最佳方式是什麼? 我只需要訪問我的模板上的數據,並從我需要的對象中提取正確的鍵值。
我有一個對象,其中包含我的應用程序啓動時需要加載的一些數據。一旦它被加載,我需要能夠在我的應用程序的多個地方重用。如何防止在angularJS中反覆加載相同的數據
這樣做的最好方法是什麼?
現在我有一個工廠,我注入到我的控制器,我拉數據,問題是,我正在做數據拉多次。
只有當我加載應用程序時,拉動數據的最佳方式是什麼? 我只需要訪問我的模板上的數據,並從我需要的對象中提取正確的鍵值。
您需要使用angularjs服務而不是工廠。 angularjs中的服務是單工的,而工廠則不是。
您應該能夠改變工廠的註冊方式,使其成爲服務。
var yourModule = angular.module('yourModule', []);
yourModule.service(
代替
yourModule.factory(
感謝您的提示,這應該可以解決我的問題。所以服務只會通過我的應用程序生成一個實例,工廠不會這樣做?我是angularJS的新手:) – Ennio
正確的是,當一個工廠被注入時,每次都會創建一個新的實例。當一個服務被注入時,每次注入同一個實例。讓我知道如果你仍然有問題,但服務應該做的伎倆。 –
創建所述的承載數據的模型和服務,這樣你將有一個抽象層來控制它。 – ajmajmajma