javascript - Angular JS 将多个数组传递给scope.list

标签 javascript angularjs

我有两个请求,要求两个单独的 JSON 文件。我试图将它们传递到范围,但我得到了 ngRepeat dupes error .

这是我的 Controller :

var app = angular.module('myApp', ['ngSanitize']);
app.controller('myController',
    function ($scope, $http, $sce) {
        var request = {
            method: 'get',
            url: 'scripts/data.json',
            dataType: 'json',
            contentType: "application/json"
        };

        var requestMenu = {
            method: 'get',
            url: 'scripts/menu.json',
            dataType: 'json',
            contentType: "application/json"
        };

        $scope.arrBirds = new Array;
        $scope.arrMenu = new Array;

        $http(request, requestMenu)
            .success(function (jsonData) {
                $scope.arrBirds = jsonData;
                $scope.arrMenu = jsonData;
                $scope.list = $scope.arrBirds + $scope.arrMenu;
            })
            .error(function () {

            });
    });

最佳答案

要发出两个 $http 请求并合并其数据,请使用 $q.all:

app.controller('myController', function ($scope, $http, $q) {
    var request = {
        method: 'get',
        url: 'scripts/data.json',
    };

    var requestMenu = {
        method: 'get',
        url: 'scripts/menu.json',
    };

    $scope.arrBirds = new Array;
    $scope.arrMenu = new Array;

    var promise1 = $http(request);
    var promise2 = $http(requestMenu);

    $q.all([promise1, promise2]).then([response1,response2] => {
        $scope.arrBirds = response1.data;
        $scope.arrMenu =  response2.data;
        $scope.list = $scope.arrBirds.concat($scope.arrMenu);
    })
});

欲了解更多信息,请参阅

关于javascript - Angular JS 将多个数组传递给scope.list,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58622027/

相关文章:

javascript - 将成对的正则表达式替换转换为单个替换

javascript - 物化选项卡

javascript - C# Web 浏览器 Instagram 登录页面未加载

javascript - angularjs 与 nw.js 不工作。 ng-src 属性

javascript - 想要将 ng-repeat 对象传递给自定义过滤器函数

javascript - d3js/AngularJS - 在 Angular Directive(指令)中使用 d3js

javascript - 当子 Controller 修改父作用域变量时,它们不会在 View 中更新

javascript - 响应元素增长的事件

javascript - 无法开始使用 Angular.js

javascript - 在呈现模板之前解析 AngularJS 指令中的内容