如何在响应为false时清除列表



HTML

<div ng-repeat="con in connectionArray"  ng-if="con.account_type=='user'">
    <p style="display:inline-block;width:160px;" class="con_name">
        <img class="teamImg" ng-src="{{ con.account_image }}">
        <span class="con_item">Profile: </span>
        <span class="con_user">{{ con.account_name }}</span>
    </p>
</div>

angularjs

yourteamService.listConnections(args).then(function(response) {
    if(!response.status){
        alert("No Connections");
    }else{
        $scope.connectionArray = response.accounts;
    }
    $scope.getListTeams = false;
}, 
function(response) {
});

在这里,我可以使用$scope.connectionArray列出连接。当响应为false时,我需要清除连接列表。如何做到这一点。

正如@Jax所说,您应该:

if(!response.status){
    alert("No Connections");
    $scope.connectionArray = [];
}

此外,我建议您使用.success().error(),而不是.then(),假设您正在服务中调用API。这样,您也可以摆脱处理HTTP响应的麻烦。

希望这能有所帮助!

以下是我发现的一个有用的链接:http://www.peterbe.com/plog/promises-with-$http

ng repeat在页面中的任何地方都会创建大量侦听器。因此,如果您的数组采用[]值,Angular将捕获它并立即重新加载页面。只是,如果你允许我给你一个建议:试着用ng show而不是ng if。ng-if在语句为true的情况下显示HTML元素(与ng-show相同(。但是ng显示加载元素。吴,如果不是。它可以防止你犯一些以后很难发现的错误。

相关内容

  • 没有找到相关文章

最新更新