2013-07-08 16 views
16

Basit yapmaya çalışıyorum düşünüyorum. ng-include, sayfaya dönüştürülmüş birden çok html sayfası eklemek için.Sözdizimi Hatası: Token 'mod' beklenmedik bir şekilde [:] ifadesinin 12. sütunundaki [kısım]/{{mod}}. Html] [mod}} ile başlayan. Html]

<div ng-controller="pageCTRL"> 
<div ng-repeat="mod in modules"> 
    <div ng-include src='partials/{{mod}}.html'></div> 
</div> 
</div> 

$scope.modules = ["mod_nav","mod_feature","mod_footer"]; 

Ancak tüm bunları elde ediyorum.

Error: Syntax Error: Token 'mod' is unexpected, expecting [:] at column 12 of the expression [partials/{{mod}}.html] starting at [mod}}.html]. 
at Error (<anonymous>) 
at throwError (angular.js:6066:11) 
at consume (angular.js:6104:7) 
at object (angular.js:6394:9) 
at primary (angular.js:6278:17) 
at unary (angular.js:6265:14) 
at multiplicative (angular.js:6251:39) 
at additive (angular.js:6239:16) 
at relational (angular.js:6230:16) 
at equality (angular.js:6221:16) <div ng-include="" src="partials/{{mod}}.html"> 

Nasıl yapılacağı konusunda bir çözümünüz var mı?

hale kod şuna benzer:

<div ng-include="" src="partials/mod_nav.html"></div> 

yüzden ben yanlış

cevap

30

ng-include 'ın src bir ifade beklediğini yapıyorum görmüyorum değil, bir dize:

<div ng-include src="'partials/' + mod + '.html'"></div> 
+0

ng doc: ... –