拆分Angular JS

时间:2017-09-09 07:36:52

标签: angularjs split

以下是我的代码:

 vm.getid = function(){
        $http({
            method: 'GET',
            url: 'api.json',
        })
            .then(function successCallback(data) {
                $scope.id = data.data;
                console.log($scope.id);
                $scope.split = $scope.id.split('/');
            }, function errorCallback(response) {
                console.log(response);
                console.log('error');
            });

    };

这是我的HTML,但它不起作用:

<div ng-repeat="s in split">
  {{s}}
</div>

Plunker:http://plnkr.co/edit/g1t4pludTTIAJYKTToCK?p=preview

我想使用 ng-repeat $scope.split 谢谢!

2 个答案:

答案 0 :(得分:2)

$scope.id是一个列表。

您希望获得的是获取列表清单

渲染它的简单方法,使用2 ng-repeat s

怎么样:

<div ng-repeat="i in id">
    <div ng-repeat="s in i.split('/')">
    {{s}}
  </div>
</div>

Demo 1

或创建split列表为:

$scope.split = [];
angular.forEach($scope.id, function (item) {
    $scope.split.push(item.split('/'));
});

因此HTML将如下所示:

<div ng-repeat="sp in split">
    <div ng-repeat="s in sp">
    sub: {{s}}
  </div>
</div>

Demo 2

答案 1 :(得分:0)

打印输出id你可以看到它是一个数组,而不是一个字符串

["/big_big_package","/door/cooler","/door/chair","/door","/lets/go/deeper/than/this","/lets/go/deeper","/low"]

并尝试拆分它会在控制台中出现以下错误

$scope.id.split is not a function

你不能拆分一个数组,你可能想拆分数组中的每个元素