国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

angular.js - angular 如何刷新頁面
淡淡煙草味
淡淡煙草味 2017-05-15 16:52:27
0
4
742

我使用$state.go();來切換頁
其中有些頁面的資料是動態(tài)的,我希望每次進來都重新載入資料。
請問如何每次當切換到這個頁面時都重新載入頁面(重新執(zhí)行controller中的方法)?
PS:

$state.go('page',null,{
    reload:true
});

這個也沒有效果

app.run(['$rootScope', '$location',
    function($rootScope, $location) {
        $rootScope.$on('$stateChangeStart', function(evt, next, current) {
            alert('route begin change');
        });
    }
]);

我在這裡獲得了state變化的事件 然而並不知道如何刷新$scope...

PS2:
我是這樣實現(xiàn)的

$scope.$on('$stateChangeSuccess', function(evt, next, current) {
    // 數(shù)據(jù)reload
});

不知道算不算土辦法...
但這樣也出現(xiàn)一個新的問題
$stateChangeSuccess中的方法會觸發(fā)2遍,這是什麼情況呢?

淡淡煙草味
淡淡煙草味

全部回覆(4)
洪濤

你可以把資料存進sessionStorage。接著在下邊那個$on的監(jiān)聽事件中進行廣播。然後在子層的controller中監(jiān)聽這個廣播事件。

迷茫

不需要特別處理啊, 你寫在controller中的程式碼, 每次切換到這個頁面中時, 這裡面的程式碼都會自動執(zhí)行一次的

巴扎黑

controller每次都會產(chǎn)生一個新的實例的,每次state的改變,controller連帶view都是新實例。這個跟angularjs的注入思想也比較一致。你可以自己在controller的程式碼裡log一下。

迷茫

"$stateChangeSuccess中的方法會觸發(fā)2遍" 這個是因為你在view 和Route裡面都寫了Controller訊息

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板