2017-04-24 78 views
0

我有一個組件使用服務使用$ resource進行API調用。組件使用get,update(put)和remove(刪除),這些都是在服務中定義和使用的。

我想重構api調用一個調用相應方法的函數(作爲參數傳入)。例如,我想調用函數callMenusApi(method)而不是MenusApi.get()...,MenusApi.update()...MenusApi.remove()...,該函數將採用傳遞的methodget,updatedelete)參數作爲api方法。

callMenusApi('get'); 

function callMenusApi(method) { 
    MenusApi.method()... 
} 

我遇到的問題是角/ JS不MenusApi.method承認method作爲參數。如何在api調用中插入參數method作爲方法?

回答

1

在你的例子中,你正試圖調用叫做literally'method'的對象方法..你必須使用動態方法名稱的括號語法。試試這個:

function callMenusApi(method) { 
    MenusApi[method]()... 
}