javascript - AngularJS 确定 ng-repeat 中的索引

标签 javascript angularjs ionic-framework

我正在尝试实现一个异步关注/取消关注功能..就像在 Instagram 中一样,当您拉出关注者列表时,每个项目都会有一个“关注”/“关注”按钮。为了简洁起见,我做了代码简单。我正在使用 ionic 框架

我在 View 中的代码:

<ion-list>
    <ion-item ng-repeat="user in users">
        <span ng-click="followUser(user.id, indexHowTo??)">Follow</span>
        <p>{{user.name}}</p>
    </ion-item>
</ion-list>
$scope.followUser = function(userid, indexHowTo) {

    var to_from = {
        to_user: userid,
        from_user: $localStorage.CurrentUser.id
    }
    UserService.FollowUser(to_from, $localStorage.CurrentUser.auth_token)
        .success(function(data) {
            $scope.users[index].is_following = true; //i'll do something in the view just didn't show for brevity

        }).
    error(function(error, status) {
        //alert(status);
        console.log(error);
    });

}

最佳答案

您实际上根本不需要任何索引,只需在函数中传递用户对象即可:

<ion-list>
  <ion-item ng-repeat="user in users">   
    <span ng-click="followUser(user)">Follow</span>
    <p>{{user.name}}</p>
  </ion-item>
</ion-list>

并以这种方式使用它:

$scope.followUser = function (user) {

    var to_from = {
        to_user: user.id,
        from_user: $localStorage.CurrentUser.id
    };

    UserService.FollowUser(to_from, $localStorage.CurrentUser.auth_token)
    .success(function (data) {
        user.is_following = true;
    }).
    error(function (error, status) {
        //alert(status);
        console.log(error);
    });
}

因此您的代码变得更干净、更简单。

关于javascript - AngularJS 确定 ng-repeat 中的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31423201/

相关文章:

javascript - 使用 Jquery 设置最小高度以避免移动问题

javascript - Angular JS 绑定(bind)等待输入

javascript - Dropzone.js 最大文件大小单位

php - Angular - PHP API 没有变量插入到数据库中

javascript - 轮询 api 直到响应成功

javascript - 根据对象数组中的值计算字符串的出现次数

angular - ion-nav 推送方法在 Ionic 4 中不起作用

javascript - 将图像 URI 转换为文件或 Blob

javascript - 如何使用 google map api 获得精确位置?

javascript - JSon 数组动态列填充 AngularJs