@zagamay_ru

Как инициализировать контроллер в angularjs после Ajax?

Возник вопрос по angularJs.

У меня есть один контроллер который отвечает за загрузку шаблонов. Суть этого контроллера в вызове функции при изменении урла (history api), сама функция делает Ajax запрос к серверу и возвращает HTML код страницы в которой подключается свой контроллер для обработки документа, как-то так
$http.post($location.url(), xx).then(function( result ) {
       $scope.myTemplate = $sce.trustAsHtml( result.data );
}, function( result ) {
      console.log( result );
})


Получил шаблон в $scope.myTemplate и вывел его на странице <div ng-bind-html="myTemplate"></div>

Всё замечательно! Только как мне теперь в этом шаблоне (myTemplate) иницилизировать контроллер, который относится к этому шаблону?
В этом куске подключил контроллер в самый низ, прописал его в ng-controller и ничего не вышло.

Помогите разобраться.
  • Вопрос задан
  • 410 просмотров
Пригласить эксперта
Ответы на вопрос 2
AMar4enko
@AMar4enko
$scope.templateUrl = $location.url();

<div ng-include="templateUrl"></div>

ng-bind-html не предназначен для компиляции и связывания шаблона (если вы понимаете, о чем я)
Ответ написан
Комментировать
streetflush
@streetflush
Может я конечно ошибаюсь, но кмк тут нужен $routeProvider + ngView plnkr.co/edit/BYExpQyDQdnCFP3ZH5uM?p=preview
А то что вы делаете: велосипед. =)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы