AngularJS laisse des commentaires en HTML: est-il possible de les supprimer?
Personne ne sait si vous pouvez supprimer l'angle des commentaires qui sont laissés dans le code html?
Par exemple: Si j'utilise ngRepeat et il n'y a pas d'éléments pour répéter plus, AngularJS feuilles ceci :
<!-- ngRepeat: post in posts -->
- Quel est le problème avec ces commentaires? Elles sont générées à côté client, par l'angle de JavaScript. Ils ont donc 0 impact sur la taille du téléchargement de l'HTML. Pourquoi ne vous souciez d'eux?
- voulez pour des fins de dépannage
- c'est une pollution visuelle lorsque vous examinez les DOM.
- C'est aussi une trop commode de la fenêtre dans les rouages de l'application. Je préfère l'utilisateur de ne pas être en mesure de voir exactement pourquoi quelque chose est caché, ou même qu'il y a là quelque chose qui pourrait être affichée si le champ d'application ont été modifiés d'une certaine façon. En d'autres termes, si je cacher un bouton supprimer de quelqu'un, je ne veux même pas connaître ce bouton est disponible à tous. Ne devriez pas tout ce que l'info-être dans la mémoire? Pourquoi ne Angulaire de la nécessité de maintenir/mettre tous les attributs et les commentaires dans les DOM?
- en fait, ils ont un impact
ol:empty { }
pauses - Il permet d'inspecter les DOM à l'aide de DevTools très difficile (dans un complexe Angulaire de l'application). Je tiens également à supprimer ces... mais il semble que cela permettrait de briser l'application :/
- L'homme @JBNizet souhaite que je pourrais downvote votre commentaire ignorants
- au lieu d'insulter, avez-vous de concret argument pour réfuter ce que j'ai dit? Pensez-vous vraiment AngularJS comprend ces commentaires sur le serveur?
- Vous pouvez supprimer les commentaires par $("*").contenu().filter(function(){ return this.nodeType == 8;}).remove(); Mais il affecte à relier ou à la modification de la portée, Parce qu'il utilise des commentaires à tout changement dans le champ de données.
- Je suis totalement d'accord avec @JBNizet à propos de la pollution visuelle. C'est vraiment gênant lorsque l'on cherche à enquêter sur les "Éléments" de l'onglet, afin de déboguer la mise en page, par exemple. Les commentaires faits ma navigation/debuging un cauchemar. Dans de nombreuses régions de la mise en page, on pouvait voir plus de commentaires que la majoration réelle! Je suis vraiment surpris d'apprendre que c'est un core-angulaire chose et que nous ne pouvons pas simplement désactiver... j'espère que angulaires développeurs trouveront un autre moyen d'obtenir ce dont ils ont besoin, sans polluer notre balisage.
Vous devez vous connecter pour publier un commentaire.
Ce commentaire est un résultat de la élément transclusion effectuées par
ngRepeat
. On dirait qu'il est qui se passe à l' près depuis l'aube des temps (angulaire) et sera créé à chaque fois qu'une directive demande pour l'élément transclusion.Alors que vous avez certainement pu essuyer avec direct manipulation de HTML, ce n'est pas une chose sûre à faire. Après avoir lu la source, il suggère que ce commentaire est nécessaire de continuer de compiler votre code HTML une fois l'original
ngRepeat
élément est supprimé. En outre, en v1.2.0,ngRepeat
ajoute plus de commentaires qui sont utilisés pour déterminer les éléments répétés sont placés.Pour résumer:
Pour réitérer les commentaires, il semble étrange de demander la suppression de ce commentaire, en premier lieu,- selon votre raisonnement pour ce faire, il peut être de meilleures options pour ce que vous voulez atteindre.inline-block
, commentaires entrainer de l'espace où personne ne doit être affiché.:empty
sélecteur , votre élément ne sera jamais vide à cause de ce commentaire à l'intérieur:empty
mais il est encore une raison valable:first-child
,:last-child
et:nth-child
sélecteurs CSS sont exclues fondamentalement inutile à l'intérieur d'unng-repeat
car ils correspondent aussi à les nœuds de commentaires..Exécuter dans votre dev console de nuke les commentaires:
Pas une bonne correction, mais pratique extrait pendant le débogage.
Mais il peut cassé quelques plugins qui ont des références sur angulaire commentaires.
ng-scope
comme une classe d'éléments. mais ces commentaires séjour dans le html. code.angularjs.org/1.5.5/docs/guide/production