Ich versuche, ein HTML-Snippet in ein einzuschließen ng-repeat
, aber ich kann das Include nicht zum Laufen bringen. Es scheint, dass die aktuelle Syntax von ng-include
anders ist als zuvor: Ich sehe viele Beispiele mit
<div ng-include src="path/file.html"></div>
Aber in den offiziellen Dokumenten heißt es zu verwenden
<div ng-include="path/file.html"></div>
Aber dann auf der Seite wird es als angezeigt
<div ng-include src="path/file.html"></div>
Egal, ich habe es versucht
<div ng-include="views/sidepanel.html"></div>
<div ng-include src="views/sidepanel.html"></div>
<ng-include src="views/sidepanel.html"></ng-include>
<ng-include="views/sidepanel.html"></ng-include>
<ng:include src="views/sidepanel.html"></ng:include>
Mein Snippet ist nicht sehr viel Code, aber es ist viel los; Ich habe in der Vorlage "Dynamisch laden"ng-repeat
gelesen , dass dies ein Problem verursachen könnte. Deshalb habe ich den Inhalt von sidepanel.html
nur durch das Wort foo
und immer noch durch nichts ersetzt.
Ich habe auch versucht, die Vorlage direkt auf der Seite wie folgt zu deklarieren:
<script type="text/ng-template" id="tmpl">
foo
</script>
Und alle Variationen der ng-include
Referenzierung des Skripts durchgehen id
und immer noch nichts.
Meine Seite enthielt viel mehr, aber jetzt habe ich sie auf genau das reduziert:
<!-- index.html -->
<html>
<head>
<!-- angular includes -->
</head>
<body ng-view="views/main.html"> <!-- view is actually set in the router -->
<!-- views/main.html -->
<header>
<h2>Blah</h2>
</header>
<article id="sidepanel">
<section class="panel"> <!-- will have ng-repeat="panel in panels" -->
<div ng-include src="views/sidepanel.html"></div>
</section>
</article>
<!-- index.html -->
</body>
</html>
Der Header wird gerendert, meine Vorlage jedoch nicht. Ich erhalte keine Fehler in der Konsole oder vom Knoten. Wenn ich in den Entwicklertools auf den Link klicke, komme src="views/sidepanel.html"
ich zu meiner Vorlage (und den Anzeigen foo
).