我写了一个工作正常的角度函数。现在,我想编写另一个调用第一个函数的角度函数。我怎么能这样做?
app.controller("AppCtrl",function($scope,$location,$http,$compile,$rootScope){
$scope.func1 = function(param1,param2){
... // function body
};
$scope.func2 = function(param3) {
var value = "someValue";
$scope.func1(value,param3);
};
});
不幸的是func2()
不起作用,即使我fucn1()
直接调用它(例如,<div ng-click="func1(val1,val2)">Click Here</div>
也是如此。为什么?
更新:
这是因为我正在做以下事情:
<ul>
<li ng-click="func2('{{item.value}}') ng-repeat="item in items">Item</li>
</ul>
由于某些原因,{{item.value}}
中没有编译ng-repeat
。我可以检查HTML并查看值是否存在,但ng-click
没有做任何事情。但是,如果我在func2
中手动输入参数值,那么它可以正常工作。那么,现在我的问题是:如何在ng-repeat中编译项目?
答案 0 :(得分:1)
我在这里修改了你的例子:http://jsfiddle.net/CsffM/
问题是你在表达式中使用括号, Insted,做到这一点:
<li ng-click="func2(item.value)" ng-repeat="item in items">Item</li>
我希望我有所帮助!