recherche

Maison  >  Questions et réponses  >  le corps du texte

angulaire.js - Comment gérer la fonction de recherche angulaire?

Supposons que j'ai deux contrôleurs, ces deux contrôleurs sont frères
ListController ==> Contrôleur de liste
SearchController ==> La page

est dans

dès qu'elle apparaît. Après avoir demandé les données avec succès, elle est montée sur 列表控制器 puis appliquée dans la vue liste. $scope.data

mais je veux chercher maintenant.

Il existe des méthodes dans

. Saisissez le texte et cliquez sur Confirmer pour obtenir les données renvoyées par le serveur. 搜索控制器

ok, j'ai réussi à obtenir les données maintenant, comment puis-je appliquer les données à

pour afficher la vue en liste ? 列表控制器

phpcn_u1582phpcn_u15822812 Il y a quelques jours580

répondre à tous(3)je répondrai

  • 淡淡烟草味

    淡淡烟草味2017-05-15 17:05:22

    Vous pouvez utiliser la diffusion angulairejs, le code clé est le suivant
    ListController

    $scope.$on('SearchController.onSearch',function(e,data){
        console.log(data);
    });

    SearchController

    //搜索方法请根据实例情况处理 ,这里只进行获得结果之后的处理
    $scope.search = function(){
        var data = [];//搜索到的数据,如果是异步拿到的,请把以后的代码放到回调中
        $scope.$emit('SearchController.onSearch',data);
    }

    Traitement du contrôleur de niveau supérieur $rootScope

    $scope.$on('SearchController.onSearch',function(e,data){
        $scope.$broadcast('SearchController.onSearch',data)    
    });

    C'est tout. Le noyau est l'utilisation de la diffusion

    répondre
    0
  • phpcn_u1582

    phpcn_u15822017-05-15 17:05:22

    Écrivez un service pour sauvegarder les données globales. Lorsque vous entrez dans la page de liste, déterminez d'abord si l'objet de données global contient des données. S'il n'y a pas de données, les données d'origine seront affichées directement. S'il y a des données, cela signifie que la recherche est terminée, et les données de recherche ou autres. les méthodes d’affichage que vous aimez seront affichées.

    répondre
    0
  • ringa_lee

    ringa_lee2017-05-15 17:05:22

    Après avoir cliqué sur Rechercher, vous devez bien sûr demander à nouveau les données. Réattribuez simplement la valeur à votre $scope.data= et c'est ok

    .

    répondre
    0
  • Annulerrépondre