Avevo intenzione di utilizzare un modello su più viste con controller diversi.
Quali sono le migliori pratiche di utilizzo di ngIncludere con la sintassi ControllerAs?
Ma ora mi rendo conto che non posso semplicemente scrivere il binding universale nei modelli perché i valori verranno inseriti all'interno di $scope.concreteControllerName
.
docs angolari per ngInclude dicono che
Questa direttiva crea nuovo ambito.
ho potuto utilizzare ng-init
direttiva e passare esempio controller per la portata del modello:
<ng-include src="..." ng-init="controller=concreteControllerName"/>
o meglio ancora
<ng-include src="..." ng-init="model=getModelForTemplate()"/>
e poi scrivere {{controller.boundvalue}}
nel modello.
Questa è una soluzione funzionante, immagino.
E qui mi piacerebbe sapere se esistono altri approcci migliori e in caso contrario, i modelli dovrebbero sempre essere utilizzati con qualche nozione di modello passato per astrarre dall'ambito principale?
Dai un'occhiata a questa [domanda SO] (http://stackoverflow.com/questions/13422966/how-to-specify-model-to-a-include-directive- in-angularjs/20639139 # 20639139) - diverse risposte ci sono grandi. –