2014-09-19 3 views
-1

J'ai un $scope.data, qui contient un [object Function] avec le nom function1. J'ai vérifié cela en le connectant à la console.erreur AngularJS: pas une fonction

Lorsque je tente d'appeler la fonction avec la ligne $scope.data.function1, je reçois une erreur « Erreur: function1 est pas une fonction »

Qu'est-ce que cela signifie, et pourquoi puis-je pas appeler cette fonction?

EDIT: Une partie du code

var ModalInstanceCtrl = function ($scope, $modalInstance, person, data) { 
    $scope.person = person; 
    $scope.data = data; 
    console.log($scope.data); 

J'appelle alors:

$scope.data.function1(); 
+1

ce qui se passe si vous faites $ scope.data()? –

+2

Pouvez-vous poster un peu plus de code pour le contexte? – sma

+0

Votre objet est de scope.data de $ l'écrasement, éliminant ainsi la fonction function1? J'ai eu un problème semblable à celui où jquery était inclus deux fois sur la page, et entre les deux, mes fonctions jquery personnalisés ont été ajoutés, alors quand jquery a été chargé la deuxième fois, l'objet jquery a été écrasé et toutes mes fonctions personnalisées ne l'ai pas exister. – Zack

Répondre

0

Salut David, si vous devez appeler cette fonction alors vous devez d'abord appeler comme ceci: -

$scope.data.function1() à partir du fichier de contrôleur .js.

Et bien vouloir fonction de vérification croisée première: -

il convient de définir comme celui-ci dans votre contrôleur:

$scope.data.function1 = function(){ 

};  
+0

Il a des parenthèses, je les ai omis par erreur. – david

+0

D'accord, alors pouvez-vous s'il vous plaît poster plus de code ou recouper vous avez défini votre fonction comme ça ..? –

Questions connexes