2013-12-18 87 views
0

我正在嘗試在工廠中建立鏈接。我需要從像data-url屬性這樣的模板到達url變量。問題是我在工廠時不知道如何達到它。也許有一些使用指令來獲取data-url屬性的方法嗎?將數據傳遞給AngularJs中的工廠方法

myApp.factory('Survey', function ($resource) { 
    var url; //I need this value somehow from template 
    return $resource(url, {surveyId: '@id'}); 
}); 

或者我應該使用其他方法或方法嗎?

+0

使用'$ rootScope'? – Atropo

+0

我試過'$ rootScope',但是當我將控制器'$ attrs'的屬性傳遞給'$ rootScope'時。它有些如何在屬性實際存儲在'$ rootScope'之前執行工廠函數。 – sarunast

回答

2

如何:

myApp.factory('Survey', function ($resource) { 
    return { 
     fetchStuff: function(url) { 
      return $resource(url, {surveyId: '@id'}); 
     } 
    }; 
}); 

如果您不希望創建你總是可以使用provider額外的功能。

+0

在發佈我的問題之前,我正在考慮這個問題。你能否更詳細地解釋提供者?選擇供應商而不是工廠有什麼好處? – sarunast

+1

提供者可以在'app.config'階段進行配置。如果你喜歡代碼示例看看這個:https://gist.github.com/Mithrandir0x/3639232 – TheHippo

相關問題