AngularJS $ parse返回undefined

时间:2015-10-29 14:07:25

标签: javascript angularjs

我想调用以下资源方法。

if($scope.type === 'User') 
  User.query($scope.query)
else if($scope.type === 'Product') 
  Product.query($scope.query)
else
  Item.query($scope.query)

我发现了一些相似之处,我决定使用eval。

它像魅力一样

eval($scope.type).query($scope.query).$promise...

但jshint警告我,使用eval并不酷。我决定使用Angular的$ parse方法。

var method = $parse($scope.type + '.query') //function (s,l,a,i){var v5,v6, ...

method($scope, $scope.query).$promise...

错误:

Cannot read property '$promise' of undefined

我的代码位于某个指令控制器中,我确定

eval($scope.type).query($scope.query).$promise

作品。

编辑:method是一些难以理解的功能,但存在。当我用context = $ scope和arguments调用它时,它返回undefined。

0 个答案:

没有答案