10
votes

TypeError: DBG est indéfini en angularjs

J'apprends les angularjs et suivez le tutoriel de - ici

Voici mon index.jsp - p> xxx pré>

cette version de contrôleur.js fonctionne - p> xxx pré>

mais à l'étape suivante, j'ai essayé de récupérer ces données JSON avec AJAX Call So Controller ressemble à ceci - P>

var phonecatApp = angular.module('phoneCatApp', []);
phonecatApp.controller('phoneListCtrl', function($scope, $http) {
    $http.get('app/js/phones.json').success(function(data) {
        $scope.phones = data;
    });
    $scope.orderProp = 'age';
});


6 commentaires

Est-il possible que votre installation Firebug est une manière d'une manière ou d'une autre? Je pense que déboggerlib.js est un fichier pour Firebug. Dans tous les cas, dans un fichier nommé que, il existe une ligne qui tente d'appeler un code sur une variable nommée DBG qui n'existe pas à ce stade du code. Découvrez ce que ce fichier correspond et vous devriez trouver votre réponse.


Essayez de reproduire la même erreur dans Chrome aussi. Si ce n'est pas répété, Firebug est le coupable.


Je viens d'avoir ce problème sur le projet que je travaille, mais mon code JavaScript avait une erreur à l'intérieur de ma fonction $ http.get qui, une fois corrigée, ne jettez plus cette erreur. Je ne vois aucune erreur directe dans votre code, mais j'essaie peut-être de commenter le code jusqu'à ce que la ligne provoque l'erreur.


J'ai aussi ce problème. C'est vraiment ennuyeux parce qu'il est très difficile de déboguer angular avec Firebug. Cela arrive à certaines erreurs angulaires et masque le vrai problème. Désolé, je n'ai pas encore de solution non plus.


@Rgimmy et c'est vrai le même cas était là pour moi. J'ai eu une erreur dans mon script et je reçois cette erreur stupide. Une fois que j'ai corrigé le problème, cette erreur a disparu.


Peut-être cette lien < / a "title =" angularjs FullCalendar Envoyer une erreur TypeError ne peut pas lire l'identifiant de la propriété d'UN% 26Quot% 3B% 26GT% 3Bink% 26LT% 3B "> Stackoverflow.com/questions/24181544/... > peut vous aider (d'abord question);


8 Réponses :


1
votes

Utilisez cette balise HTML de code HTML.

  <base href="/">


0 commentaires

0
votes

L'erreur que vous rencontrez est avec votre fichier JSON. Il devrait ressembler à ceci: xxx

N'oubliez pas les crochets.

Utilisez . Puis plutôt que . Il s'agit d'une version améliorée de .Success gérant tous les rappels et appelle plus efficacement. Il ramène toute la promesse et vous le résolvez en faisant référence à la partie .Data, c'est-à-dire réponse.data xxx

Démo - Utilisation de .Success

Démo - Utiliser .Ce promesse


0 commentaires

11
votes

J'ai eu cette même erreur, et après quelques grattations de tête trouvées une cause em>. Je ne peux pas être sûr que cela soit votre em> la même cause.

Redémarrage de Firefox, redémarrer le PC, retirer le Firebug, réinstaller, optimiser, exécuter le registre propre, etc. - rien n'a aidé. J'ai eu une erreur dans déboggerlib.js ligne 556, DBG étant indéfinie. P>

Cependant, il s'avère que j'ai installé Firebug de retour dans les jours et il a créé un répertoire dans mon profil d'itinérance: P>

C:\Users\Leonardo\AppData\Roaming\Mozilla\Firefox\Profiles\Leonardo.Serni\firebug


9 commentaires

Vous avez sauvé ma journée (et mon profil FX ^^ Je pensais que c'était interne à FX, peut-être que ce nouveau FX 49 ... Nope). Trouver un fichier JSON de 170 kb avec 150 kb liée à un projet 2012-2015, avez-vous déjà oublié Firebug? EDIT: Attendez, la question est de 2014 mais votre réponse d'hier? Quelque chose me manque


Hé bien oui. Une fois que mon piste de firebug a eu la course, je suis la première chose que la première fois sur le débordement de la pile. Malheureusement, aucune des réponses ici m'a aidé. Quand j'ai trouvé ce que dans mon cas était une solution, je l'ai posté au cas où quelqu'un d'autre avait les mêmes symptômes avec la même cause. Content de voir ça a fonctionné :-). Malheureusement, ce genre de choses ont tellement de facteurs que les mêmes symptômes ("cela ne fonctionne pas!") Peut dépendre de n'importe quoi , et vous pouvez avoir une vingtaine de réponses et toutes sont correctes pour Quelqu'un . Ou vous pourriez avoir besoin de tester deux ou trois réponses en même temps.


Je pense que c'est peut-être un fichier de mauvais annotations. Votre solution a fonctionné. J'ai donc arrêté FF et copié dans mon ancien fichier de points d'arrêt, toujours travaillé. Arrêté et copié dans le fichier d'annotations, la même erreur était de retour.


Vous avez raison . Mon ancien fichier Annotations est PAS Longueur de zéro, mon nouveau fichier est. Je ne peux pas faire la tête ou la queue de son contenu, mais je vais probablement y regarder quelque peu :-)


Crazy Est-ce que cela m'est arrivé hier, alors je l'ai réparé par vos conseils et découvrit la chose du dossier des annotations. Bam, avoir le problème à nouveau ce soir. /plaindre/. Maintenant, je viens d'arrêter Firefox, RM -F le fichier (je suis sur Linux), puis enfoncez Firefox. J'espère que cela ne devient pas une habitude (mauvaise) de la part de Firefox.


J'ai renommé le dossier, même dans le dossier que j'ai renommé l'annotaion .old. Mais lorsque je redémarre le Firefox, il crée automatiquement un nouveau dossier avec les deux scripts dedans. Donc, cette solution ne fonctionne pas pour moi, aide!


Mais ces fichiers sont maintenant vides, n'est-ce pas?


Avez-vous une idée où est ce fichier à OSX?


@ssudhir, vous pouvez ouvrir un terminal et exécuter quelque chose comme: trouver / -name annotations.json . Il faudra Âges , mais cela vérifiera partout sur le disque dur. Éventuellement si vous exécutez trouver / utilisateurs -name annotations.json Il vérifiera moins de fichiers, mais je ne suis pas trop sûr que tout soit maintenu sous / utilisateurs dans OS X. Mais je vais vérifier mon travail Mac plus tard ce soir.



3
votes

Vous utilisez probablement Firefox avec Firebug activé.
Éteignez Firebug et votre problème disparaîtra.

J'ai eu le même problème, d'autres navigateurs n'avaient aucun problème et la console a montré l'erreur provenant de déboggerlib.js (ligne 556). Désactivation de la suppression de l'erreur et a permis à mon application de fonctionner comme prévu.


0 commentaires

1
votes

Essayez ceci, Première initialisation La valeur de la matrice JSON est une initialisation vide.SO Initialiser

    $scope.phones = '';


0 commentaires

-1
votes

Pour moi, le problème était que j'avais oublié de définir dans le contrôleur la bibliothèque xxx pré>

Ça fonctionne après avoir changé la première ligne de mon code à: p>

app.controller("MyCtrl", function($scope, $http, $timeout) {  //<- here I put the $timeout 


1 commentaires

Je ne comprends pas le point négatif, vous devriez mentionner une raison pour que je puisse le réparer



1
votes

Explication de @LSERNI semble correct. Pour le système Linux, supprimez et réinstallez votre plugin Firebug. Le système automatique supprime tous les fichiers / dossiers associés et le recréère. Cela a fonctionné pour moi.


0 commentaires

0
votes

Vous utilisez le numéro, veuillez utiliser un numéro ou une valeur d'analyse sur un exemple de numéro ci-dessous.

<code>
   var myApp = angular.module('MyApp',[]);
    myApp.controller("myController",function($scope){
        $scope.width=50;
        $scope.height=50;
    });
</code>


0 commentaires