working not angularjs angularjs-ng-repeat angularjs-ng-include

angularjs - not - ¿Cómo construyo dinámicamente un ng-include src?



ng-include angularjs (1)

ngInclude | src ngInclude | src directiva ngInclude | src requiere una expresión angular, lo que significa que probablemente deberías escribir

ng-src="''/modules/'' + module.Id + ''/tpl.html''"

De http://docs.angularjs.org/api/ng.directive:ngInclude

ngInclude | src cadena expresión angular evaluando a URL. Si la fuente es una cadena constante, asegúrese de incluirla entre comillas, por ejemplo, src = "''myPartialTemplate.html''".

Podría ser mejor si construyes la url en un modelo en lugar de HTML en línea

<div ng-repeat="module in modules" id="{{module.Id}}"> <ng-include src="module.url"></ng-include> </div>

Tengo el siguiente código:

<div ng-repeat="module in modules" id="{{module.Id}}"> <ng-include ng-init="bootstrapModule(module.Id)" src=""></ng-include> </div>

Quiero poder construir una cadena en src así:

/modules/{{module.Name}}/{{module.Name}}.tpl.html

Pero sigo golpeando las barricadas. He intentado usar una función de devolución de llamada para construirla,

$scope.constructTemplateUrl = function(id) { return ''/modules/'' + id + ''/'' + id + ''.tpl.html''; }

Pero esto se llama una y otra vez y no parece gustar eso. También he intentado construirlo así:

ng-src="/modules/{{module.Id}}/{{module.Id}}.tpl.html"

Pero eso tampoco está funcionando. En lugar de pasar horas andando por las ramas, me preguntaba si alguien más se ha topado con algo como esto y tiene alguna idea.

Además, cuando tomo los módulos de $ resource, los devuelvo de forma asíncrona con $ q, por lo que parece que no puedo pasar y agregarlos a los módulos antes en el controlador, ya que $scope.modules simplemente es igual a una función " then en ese punto.

¿Algunas ideas?