我正在構建由第三方API支持的AngularJS應用程序。我有一個這樣的基本資源:AngularJS - 如果API響應爲null,則初始化ngResource對象
module.factory('UserPreference', function($resource) {
return $resource('/users/:user_id/preferences/:preference_type_id', {
user_id: "@user_id",
preference_type_id: "@preference_type_id"
})
})
如果用戶沒有指定某個首選項類型的首選項,結果將爲空。我想在響應爲空的情況下初始化對象。
{user_id: 1, preference_type_id: 1, preference: null}
我可以看到兩個選項:
- 工廠內transformResponse做到這一點
- 處理它在控制器
1似乎是一個清潔的選擇,因爲這是真的一個數據問題不僅僅是一個控制器問題,但我無法弄清楚如何做到這一點的細節。具體而言,我無法訪問傳遞給資源的:user_id和:preference_type_id params。
我應該在控制器中處理這個問題嗎?有什麼明顯的我失蹤了嗎?