1
我使用單例RKObjectManager在我的應用程序周圍的很多地方調用對象請求(即「postObject:path:parameters:success:failure:」)。RestKit單個成功塊
我可以製作一個塊,它將被稱爲每個調用的成功塊嗎? (避免代碼重複)
我試圖RKObjectManager的子類,但找不到正確的方法來覆蓋。
我使用單例RKObjectManager在我的應用程序周圍的很多地方調用對象請求(即「postObject:path:parameters:success:failure:」)。RestKit單個成功塊
我可以製作一個塊,它將被稱爲每個調用的成功塊嗎? (避免代碼重複)
我試圖RKObjectManager的子類,但找不到正確的方法來覆蓋。
將塊存儲爲實例變量,該實例變量可以從您正在進行RKObjectManager調用的位置引用。
void (^callback)(RKObjectRequestOperation * operation, RKMappingResult * mappingResult);
這定義了一個名爲「回調」返回void和採用兩個參數塊。用下面的代碼初始化這一點:
callback = ^(RKObjectRequestOperation * operation, RKMappingResult * mappingResult) {
// Your completion code here
};
現在,你可以通過使用變量名「回撥」作爲成功的塊參數重用你的POST請求此塊的代碼。
這可能是一個選項。但仍然需要在每個請求中顯式調用回調。沒有更優雅的方式嗎?似乎很奇怪,沒有辦法可以重寫來實現這一點。 – Rizon
我還沒有找到任何可以讓你設置默認成功塊的東西。另一種選擇是在你自己的具有預定義塊的單例中編寫一個函數postObject:path:parameters。但是,這與實例變量選項類似。 – danielM
是的,這也意味着我將不得不編寫所有相關的方法。 (getObject:..,deleteObject:...等) – Rizon