其他控制器角度的recup选项卡

时间:2017-06-05 12:53:40

标签: javascript angularjs controller

我有一点问题,我为展示广告制作了一个有角度的应用。我在两个不同的视图中有两个控制器,第一个控制器显示所有广告,第二个控制器显示第一个广告详细信息。我想在第二个控制器中检索我的数组“this.annonces_ar”。

此数组包含所有广告。

app.js

angular.module('myApp', [
'ngRoute',
'annoncesServices'
])
.config(function($routeProvider) {
    // Système de routage
    $routeProvider
        .when('/home', {
            templateUrl: 'app/annonces.html',
            controller: 'annonceCtrl',
            controllerAs: 'vm'
        })
        .when('/home/:annonce', {
            templateUrl: 'app/annonceDetails.html',
            controller: 'annonceDetailsCtrl',
            controllerAs: 'vm'
        })
        .otherwise({
            redirectTo: '/home'
        })
    })
.controller('annonceCtrl', ['$http', '$routeParams', IHMAnnonceListe])
.controller('annonceDetailsCtrl', ['$http','$routeParams', 'annonces', function ($http, $routeParams, annonces) {
     //Retrieve array "this.annonce_ar" here from first controller
}]);

IHMAnnonceListe

function IHMAnnonceListe($http) {
var vm = this;

this.annonces_ar = [];

//controller processing number one
$http.get('./annonces.json').then(function (data) {
    vm.ajouterAnnonce(data.data);
    vm.getAnnonceById(580)
});

this.getAnnonceById = function (_id) {
    for(var i in this.annonces_ar){
        if(this.annonces_ar[i].id_nb == _id){
            return this.annonces_ar[i]
        }
    }
};

this.ajouterAnnonce = function (_annonceObjet) {
    var keys = Object.keys(_annonceObjet);
    for (var i = 0; i < keys.length; i++) {
        var annonce = keys[i];
        var implAnnonce = new Annonce();
        implAnnonce.hydrate(_annonceObjet[annonce]);
        this.annonces_ar[i] = implAnnonce;
    }
    console.log(this.annonces_ar)
};
}

由于

0 个答案:

没有答案