@Jiakki-js

Kак загрузить контроллер раньше директиви ?

Kак загрузить директиву раньше контроллера ?

(function () {
var app = angular.module('app',["all-directive"]);
	
	app.controller('pustTextCtrl', function($scope, $http){
		$http.get("json/data.json").success(function(data){
			$scope.data = data;
		});
	}); 
}();


(function () {
	var app = angular.module('all-directive',[]);

	app.directive('anyDirective', function(){
		return {
			restrict: 'A',
			link: function($scope, elem, iAttrs, controller) {
				alert(elem.children());[] // пустой массив /а нужны данные
			}
		};
	});
})();
  • Вопрос задан
  • 2200 просмотров
Пригласить эксперта
Ответы на вопрос 2
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
поменять эти два блока местами.
Ответ написан
benbor
@benbor
Помог ответ - не забудь лайкнуть
1. Пользуйтесь тегами CODE. Так гораздо проще читать исходный код... удивительно
2. Не совсем понятно, результат AJAX вы кладете в $scope, а хотите увидеть в DOM
(function () {
  var app = angular.module('app',["all-directive"]);

  app.controller('pustTextCtrl', function($scope, $http){
    $http.get("json/data.json").success(function(data){
      $scope.data = data;
    });
  });
}();

(function () {
  var app = angular.module('all-directive',[]);

  app.directive('anyDirective', function(){
    return {
      restrict: 'A',
      link: function($scope, elem, iAttrs, controller) {
        //alert(elem.children());[] // пустой массив /а нужны данные
        $scope.$watch('data', function(newData){
           if(newData) {  // первый раз watch вызовется когда ajax данные еще не придут
              alert(newData); // пользуйтесь
           }
        });
      }
    };
  });
})();
Ответ написан
Ваш ответ на вопрос

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

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