sref angularjs angularjs-ng-include ng-view

angularjs - sref - ¿Cómo anidar ng-view dentro de ng-include?



ui sref ui router angularjs (1)

Cuando se intenta agregar una ng-view ng-include dentro de una ng-include , no sucede nada. por ejemplo, en el siguiente código, cuando themes / midnight / index.html contiene una ng-view , no se representa ninguna vista:

<ng-include src="''themes/midnight/index.html''"></ng-include>

Sin embargo, si uso el siguiente código, la vista se muestra dos veces:

<ng-include src="''themes/midnight/index.html''"></ng-include> <div ng-view></div>

¿Cuál es el problema y cómo puedo resolverlo?


Este problema ocurre debido a una instanciación retrasada de ng-view (que pasa a través de ng-include ). En tal caso, la instanciación de $route se retrasa, y $route perderá el evento de cambio de ubicación (y el enrutamiento no se realizará en absoluto).

Para evitar esto, invoque la función de actualización $route en la inicialización de la aplicación:

yourApp.run([''$route'', function($route) { $route.reload(); }]);

Además, es suficiente incluir solo $route como una dependencia. Esto funcionará, también:

yourApp.run([''$route'', angular.noop]);

Fuente: el tema relacionado en github .

También ui-router ver ui-router , que está diseñado para tratar específicamente el problema de las vistas anidadas.