앙굴라이스 컨트롤러 기능을 실행하는 방법 페이지에서 로드형?

현재 내가 앙굴라리제스 있을 수 있는 페이지를 검색 및 결과를 표시합니다. 뒤로 버튼을 클릭하면 클릭 후 사용자 검색 결과. 하지만 나는 내가 원하는 검색 결과를 표시할 수 있는 방법을 다시 can& # 39, t 작동합니까 트리거하여 검색 노력하고 있습니다. # 39 의 here& 세부.

  • 내 앙굴라리제스 페이지는 검색 페이지를 통해 검색 필드는 및 검색 버튼를. 사용자가 수동으로 입력 및 쿼리하고 버튼을 누릅니다. 해고 및 ajax 질의입니다 그 결과에 따라 표시됩니다. 내가 URL 의 업데이트하십시오 검색어. 모든 작동합니다.
  • 사용자가 있으며 검색 결과에 대한 수행됨을 너무 다른 페이지, 즉 작동합니다.
  • 내 버튼을 누르면 사용자 검색 페이지를 다시 거슬러 각도 및 올바른 uirl 표시되었습니까 검색어 등. 모든 작동합니다.
  • I have 바인딩될 검색 필드는 가치 있는 검색어를 uirl 도왔으매) 이 있는 검색어를 걱정했던것. 모든 작동합니다.

어떻게 다운로드합니까 검색 기능을 가진 사용자가 실행할 수 없이 다시 button&quot &quot 눌러, 검색,? Jquery 의 함수가 실행 후 꼭 이래야겠어요 전송되었기 경우 도쿠망리디 함수은. # 39, 내가 can& avamer 앙굴라리제스 볼 수 없다.

질문에 대한 의견 (1)
해결책

한 손으로 @Mark-Rajcok 도망칠 수 있는 것처럼 선생님이 그냥 있는 민간 내부 기능:

// at the bottom of your controller
var init = function () {
   // check if there is query in url
   // and fire search in case its value is not empty
};
// and fire it after definition
init();

[Ng init] [1] 디렉티브을 살펴 수 있습니다. 구축상의 적립율은 비슷합니다.

// register controller in html
<div data-ng-controller="myCtrl" data-ng-init="init()"></div>

// in controller
$scope.init = function () {
    // check if there is query in url
    // and fire search in case its value is not empty
};

하지만 이에 대해 잘있게나 이를 [각 문서용으로 암시 (이후 v1.2)] (http://docs.angularjs.org/api/ng.directive 너지니스) '를 사용하지 않는' ng init iqn. 그러나 응용 프로그램의 의존하기 아키텍처입니다 작용하게 된다.

난 '때' 에 사용된 ng init 가치를 전달하는 싶었다 백 각 app:

<div data-ng-controller="myCtrl" data-ng-init="init('%some_backend_value%')"></div>

[1]: 너지니스 http://docs.angularjs.org/api/ng.directive

해설 (9)

이거라도 붙일래요?

$scope.$on('$viewContentLoaded', function() {
    //call it here
});
해설 (5)

그렇게 할 수 없는 'i get to work for me)' 와 ',' $ 비스콘텐트로데트 ng init 받아야 할 때만 사용할 수 있는 'ng 반복하십시오' (붽뎄 따르면) 에서 직접 함수를 호출할 경우 문제가 발생할 수 있습니다, 또한 코드 기반으로 한 컨트롤러거 요소에 hasn& # 39, 아직 정의되지 않는다.

이게 나는한다 및 작동하잖아 가져다줄래요:

$scope.$on('$routeChangeSuccess', function () {
  // do something
});

39 를 사용하여 ᅴ 러우터 you& 않는 한, '하고'. 그럼 it& # 39, s:

$scope.$on('$stateChangeSuccess', function () {
  // do something
});
해설 (4)
angular.element(document).ready(function () {

    // your code here

});
해설 (5)

39, s, t # 39 didn& 솔루션이므로 s/Mark& dimitri& # 39, 내 업무에 사용하는 것이 [$ 시간초과했습니다] (https://docs.angularjs.org/api/ng/service/) $ 시간초과했습니다) 기능을 잘 수행할 수 있도록 코드만 런입니다 수정표시와 렌더링됩니다 후 것으로 보인다.

# Your controller, including $timeout

var $scope.init = function(){
 //your code
}

$timeout($scope.init)

희망을 줍니다.

해설 (3)

이 경우, 이러한 작업을 수행할 수 있습니다 다음 DOM 객체에는 보고있을래요 비스콘텐트로데트 변경하십시오 뭔가. 그러나 내시경이요 $ $ 을 사용하여 한 페이지 모드 on your 경로설정을 있을 때 특히 너무 다르게 작동합니다.

 $scope.$watch('$viewContentLoaded', function(){
    // do something
 });
해설 (1)

39, s $ 창 객체에는 angular& 사용할 수 있습니다.

$window.onload = function(e) {
  //your magic here
}
해설 (0)

또 다른 대체.

var myInit = function () {
    //...
};
angular.element(document).ready(myInit);

(via https://stackoverflow.com/a/30258904/148412)

해설 (0)

또 다른 대안이 될 수 있으면 그냥 컨트롤러거 해당 페이지:

(function(){
    //code to run
}());
해설 (0)

$ 루테프로비더 .국가 대한 고객의 서비스 및 부트스트랩에 사용할 때 해결할 수 있습니다. 이것은 말하도다 것인지 로드형 컨트롤러 및 보기인 해결하십시오 후에만 해당 서비스:

ᅴ 라우팅합니다

 .state('nn', {
        url: "/nn",
        templateUrl: "views/home/n.html",
        controller: 'nnCtrl',
        resolve: {
          initialised: function (ourBootstrapService, $q) {

            var deferred = $q.defer();

            ourBootstrapService.init().then(function(initialised) {
              deferred.resolve(initialised);
            });
            return deferred.promise;
          }
        }
      })

서비스

function ourBootstrapService() {

 function init(){ 
    // this is what we need
 }
}
해설 (0)

드미트리 에우세비 오토메이티드 com/downloads/global/corporate/iar/esg_prosupport. 꽤 유용합니다.

  • 사례 1: Alone:* 앙굴라이스 사용하여 br&gt &lt, 실행할 수 있는 방법을 사용할 수 있습니다 ',' 페이지 부하 ng init 뷰에서의 선언하고 init 방법으로 이러한 점을 고려하면 더 무거운 컨트롤러이면 사용하는 기능을 사용하지 않는 권장됨 따라 각 docs 에 ng init:

&gt. 그렇다고 이 디렉티브을 추가할 수 있는 양의 논리를 불필요한 너회의 템플릿일. 가지뿐입니다 너지니스 적절한 사용하는 등 몇 가지 속성을 앨리어싱 특별광고에 그리피스 데모 같이 아래. 서버 사이드 스크립트 및 통해 데이터를 의미한다. 이들 외에 몇 건에 대한 값을 대신 초기화하려면 콩지름에 컨트롤러에서는 너지니스 내시경이요

  • HTML:*
<div ng-controller="searchController()">

</div>
  • Controller:*
app.controller('SearchCtrl', function(){

    var doSearch = function(keyword){
        //Search code here
    }

    doSearch($routeParams.searchKeyword);
})
  • 경고 :*) 의 뜻을 의미하는 것처럼 이 컨트롤러거 사용하지 않는 다른 뷰일 실행할 수 있어 검색 방법을 너무 다른 원인이 된다.

  • 사례 2: Ionic:* 사용하여 위의 코드는 br&gt &lt,, 그냥 '에서' 루트리아스 캐시에는 비활성화되었습니다 보기입니다 smartupdate 사용할 수 있다.

  • 루트리아스 *

.state('app', {
    url           : '/search',
    cache         : false, //disable caching of the view here
    templateUrl   : 'templates/search.html'   ,
    controller    : 'SearchCtrl'
  })

이렇게 하면 된다.

해설 (1)

내가 경식도 비슷한 문제를 안고 있으며, 오직 이 솔루션은 협력했습니다 가져다줄래요 (it) 는 후에 함수은 DOM 완료하십시오 로드했습니다). 내가 사용하는 경우 이 페이지를 스크롤한 뒤 로드되었는지 앵커:

angular.element(window.document.body).ready(function () {

                        // Your function that runs after all DOM is loaded

                    });
해설 (0)

검색 결과 저장할 수 있습니다 상용 서비스에 사용할 수 있는 다른 페이지로 이동할 때, t # 39 어디서부터든 및 doesn& 선택해제합니다 후 버튼을 누르면 저장된 데이터를 검색 결과에 대해 함께 다시 설정할 수 있습니다.

function search(searchTerm) {
    // retrieve the data here;
    RetrievedData = CallService();
    CommonFunctionalityService.saveSerachResults(RetrievedData);
} 

단축시킵니다 박버튼

function Backbutton() {
    RetrievedData = CommonFunctionalityService.retrieveResults();
}
해설 (0)

초기 메서드을 호출하십시오 초기화하지 자체 내에 있다.

(function initController() {

    // do your initialize here

})();
해설 (0)