Rufen Sie $http.Holen Sie sich aus der Richtlinie link

Muss ich anrufen $http.get Funktion aus der Richtlinie link in AngularJS,
hier ist mein code...das ist eine AutoVervollständigen-Funktion.

oder gibt es eine Möglichkeit zu nennen, einen controller aus der Richtlinie-link-Funktion?

Hier ist der code

.directive('ionSelect',function(){

'use strict';
return{
    restrict: 'EAC',
    scope: {
       label:'@',
        labelField:'@',
        provider:'=',
        ngModel: '=?',
        ngValue: '=?',
        myFunctionToCall : '='

    },
     require: '?ngModel',
     transclude : false,
     replace: false,
    template:
                '<div class="selectContainer">'
                 //  +'<label class="item item-input item-stacked-label">' 
                      // +'<span class="input-label">{{label}}</span>'
                     //  +'<div class="item item-input-inset">'
                            +'<label class="item item-input" >'
                                +'<i class="icon ion-ios-search-strong"></i>'
                                +'<input id="filtro" type="search"  ng-model="ngModel" style="padding: 5px;" ng-value="ngValue" ng-keydown="onKeyDown()"/>'
                  //         +'</label>'
                       //    +'<button class="button button-small button-clear" ng-click="open()">'
                      //         +'<i class="icon ion-chevron-down"></i>'
                      //     +'</button>'
                    //   +'</div>' 
                    +'</label>'
                    +'<div class="optionList padding-left padding-right" ng-show="showHide">'
    +'<ion-scroll>'
                        +'<ul class="list">'
    +'<li class="item" ng-click="selecionar(item)" ng-repeat="item in provider | filter:ngModel" >{{item[labelField]}}</li>'                    
                        +'</ul>'
    +'</ion-scroll>'
                    +'</div>'    
                +'</div>'
         ,


    link: function (scope, element, attrs,ngModel) {
        scope.ngValue = scope.ngValue !== undefined ? scope.ngValue :'item';

        scope.ontouch1 = function(item){
            console.log(item[labelField]);alert(1);
        };

        scope.selecionar = function(item){
            ngModel.$setViewValue(item);
            scope.showHide = false;
        };

        element.bind('click',function(){
            element.find('input').focus();
        });

        scope.open = function(){

              scope.ngModel = "";  
            return scope.showHide=!scope.showHide;
        };

        scope.onKeyDown = function(){
            scope.showHide = true;
            if(!scope.ngModel){
                 scope.showHide = false;
            }
        }

        scope.$watch('ngModel',function(newValue){
            if(newValue)

        element.find('input').val(newValue[scope.labelField]);

        if(newValue[scope.labelField]!== undefined){

          alert(newValue[scope.labelField]);

An dieser Stelle muss ich anrufen $http.get Anfrage-Funktion, um Datenbank -

Fortsetzung des Codes:

                }
            });
        },
    };  
})

Ich bin neu in diesem Codierung bitte um Hilfe...

  • Definieren Sie diesen link in der Richtlinie werden Anwendungsbereich und transclude es, wo Sie wollen, bei der Vorlage
  • kann u bitte machen Sie es etwas klarer ??
InformationsquelleAutor Ann4u | 2015-05-22
Schreibe einen Kommentar