J'essaie d'inclure un extrait de HTML à l'intérieur d'un fichier ng-repeat
mais je n'arrive pas à faire fonctionner l'inclusion. Il semble que la syntaxe actuelle de ng-include
est différent de ce qu'il était auparavant : Je vois de nombreux exemples utilisant
<div ng-include src="path/file.html"></div>
Mais dans le documents officiels il est dit d'utiliser
<div ng-include="path/file.html"></div>
Mais alors en bas de la page il s'agit de
<div ng-include src="path/file.html"></div>
Quoi qu'il en soit, j'ai essayé
<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>
Mon extrait ne contient pas beaucoup de code, mais il y a beaucoup de choses. Chargement dynamique du modèle à l'intérieur ng-repeat
que cela pouvait poser un problème, j'ai donc remplacé le contenu de la rubrique sidepanel.html
avec juste le mot foo
et toujours rien.
J'ai également essayé de déclarer le modèle directement dans la page comme ceci :
<script type="text/ng-template" id="tmpl">
foo
</script>
Et en passant en revue toutes les variations de ng-include
en faisant référence au script du id
et toujours rien.
Ma page contenait beaucoup plus de choses, mais maintenant je l'ai réduite à ça :
<!-- 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>
L'en-tête est rendu, mais mon modèle ne l'est pas. Je n'obtiens aucune erreur dans la console ou à partir de Node, et si je clique sur le lien dans la section src="views/sidepanel.html"
dans les outils de développement, il m'emmène vers mon modèle (et affiche foo
).