2016-04-18 1 views
0

Hier in summary.controller.js in Zeile 37 ich rufe die 'filter.jdpa', die Methode im Service definiert ist: filter.js. Das Verfahren sollte einen Array jdpaarr zurückzukehren aber wenn ich es in der Steuerung Anruf erhalte ich die ganze Methodendefinition als Ausgabe The output of the controllerDer Serviceaufruf gibt die Funktionsdefinition als die tatsächliche Rückgabe in Winkel zurück

The service calls from the controller

Der Code für den Dienst auch unter

angebracht ist
(function() { 
    'use strict'; 
    angular.module('app') 
      .service('filter', filter); 

    function filter() { 

      this.jdpaf=jdpaf; 
      this.yearf=yearf; 
      this.cityf=cityf; 

    function jdpaf(){ 
     var jdpaarr=['All','JDPA','Non-JDPA']; 
     console.log(jdpaarr); 
     return 'jdpaarr'; 


    } 

    function yearf(){ 
     var yeararr=['2011','2012','2013','2014']; 
      console.log(yeararr); 
     return 'yeararr'; 
    } 


    function cityf(){ 
     var cityarr=['Delhi','Mumbai','Trivandrum','Banglore','Hyderabad']; 
     return cityarr; 
    } 


     } 
    })(); 

Ich habe console.logs im Dienst selbst gegeben, aber das funktioniert nicht. Warum wird aber die gesamte Funktionsdefinition im Funktionsaufruf angezeigt?

Antwort

1

Sie weisen grundsätzlich nur die Definition zu.

Versuchen Sie, es bei der Initialisierung aufzurufen/auszuführen und den zurückgegebenen Wert in Ihrem Bereich zu speichern.

$scope.Filterarray.jdpa = filter.jdpaf(); 

Hoffe, das hilft.

Verwandte Themen