API调用中的动态方法名称(AngularJS / $ resource)

时间:2017-04-24 12:01:28

标签: javascript angularjs

我有一个使用服务来使用$ resource进行API调用的组件。该组件使用getupdate(put)和remove(删除),这些都是在服务中定义和工作的。

我想重构api调用一个调用适当方法的函数(作为参数传入)。例如,我想调用函数MenusApi.get()...而不是MenusApi.update()...MenusApi.remove()...callMenusApi(method),而不是method get 1}},updatedelete)参数作为api方法。

callMenusApi('get');

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

我遇到的问题是Angular / JS无法识别method中的MenusApi.method作为参数。如何在api调用中插入参数method作为方法?

1 个答案:

答案 0 :(得分:1)

在您的示例中,您尝试调用名为字面意思的对象方法' ..您必须对动态方法名称使用括号语法。试试这个:

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