AngularJS 中的回調反轉:反模式
在AngularJS 中,將回調傳遞給Promise 的服務是常見的做法。但是,這種方法可能會引入反模式並阻礙 Promises 的好處。
反模式範例:
考慮以下程式碼,其中getTokens 服務接受回呼函數:
... getTokens: function(callbackFn) { $http.get('/api/tokens').then (function onFulfilled(response) { callbackFn(response.data); }); } ...
這種方法有幾個缺點:
最佳實踐重構:
要解決此反模式,重建程式碼如下:
... getTokens: function() { return $http.get('/api/tokens'); } ...
在呼叫模組中,使用返回的Promise來處理結果:
yourModule.getTokens() .then(function(response) { // handle it });
最佳實踐的好處:
採用這種最佳實踐有幾個優點:
以上是你應該在 AngularJS Promise 中使用回調嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!