这是我第一次在这里发帖提问,抱歉我的英语不好(如果发现的话)。
我正在使用AngularJs处理单页应用程序项目,我在处理生成的ng-repeat变量时遇到了麻烦。
这是我的HTML
<div ng-controller="mainCtrl">
<div class="icon icon-comment" ng-click="showComment()"></div>
<!--====The Button(icon) Above Will Open Up This Div====-->
<div ng-controller="secondCtrl" ng-show="commentSection" ng-repeat="comment in comments">
<span>{{ comment.HowManyVote }}</span>
<span class="icon icon-thumb" ng-click="commentVote()"><span>
</div>
</div>
我的棱角分明
.controller('mainCtrl', function($scope)
{
$scope.showComment = function()
{
$scope.commentSection = !($scope.commentSection);
// run a service and get the json "comments" from API succesfully
};
});
.controller('secondCtrl', function($scope)
{
$scope.commentVote = function()
{
// How do I vote that particular comment from here??
};
});
我可以正确显示所有评论但我无法通过第二个控制器中的$ scope.comment.HowManyVote访问或操纵每条评论的值。
请为我建议一个解决方案,如果可能的话,不要乱用html。
答案 0 :(得分:1)
只需将该变量传递给您的函数。
所以:ng-click="commentVote(comment)"
和:
$scope.commentVote = function(comment)