如何在頁面加載時執(zhí)行AngularJS控制器功能?目前,我有一個Angular.js頁面,允許搜索和顯示結果。用戶單擊搜索結果,然后單擊“后退”按鈕。我希望搜索結果再次顯示,但我無法確定如何觸發(fā)搜索來執(zhí)行。細節(jié)如下:我的Angular.js頁面是一個搜索頁面,有一個搜索字段和一個搜索按鈕。用戶可以手動輸入查詢并按下一個按鈕,Ajax查詢就會被觸發(fā)并顯示結果。我用搜索詞更新URL。一切都很好。用戶點擊搜索結果,并被帶到另一個頁面-這也很好。用戶單擊后退按鈕,然后返回到我的角度搜索頁面,并顯示正確的URL,包括搜索詞。一切正常。我已經(jīng)將搜索字段值綁定到URL中的搜索項,因此它包含了預期的搜索項。一切正常。如何使搜索函數(shù)再次執(zhí)行,而不需要用戶按下“搜索按鈕”?如果是jQuery,那么我將在document戰(zhàn)備函數(shù)中執(zhí)行一個函數(shù)。我看不到Angular.js的等價物。
3 回答

楊魅力
TA貢獻1811條經(jīng)驗 獲得超6個贊
// at the bottom of your controllervar init = function () { // check if there is query in url // and fire search in case its value is not empty};// and fire it after definitioninit();
// 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};
ng-init
ng-init
<div data-ng-controller="myCtrl" data-ng-init="init('%some_backend_value%')"></div>

慕神8447489
TA貢獻1780條經(jīng)驗 獲得超1個贊
$scope.$on('$viewContentLoaded', function() { //call it here});

慕尼黑5688855
TA貢獻1848條經(jīng)驗 獲得超2個贊
$viewContentLoaded
ng-init
ng-repeat
$scope.$on('$routeChangeSuccess', function () { // do something});
ui-router
$scope.$on('$stateChangeSuccess', function () { // do something});
- 3 回答
- 0 關注
- 732 瀏覽
添加回答
舉報
0/150
提交
取消