angular.js - sudut cara menyegarkan halaman
淡淡烟草味
淡淡烟草味 2017-05-15 16:52:27
0
4
601

Saya menggunakan $state.go(); untuk menukar halaman
Data pada beberapa halaman ini adalah dinamik dan saya mahu data dimuatkan semula setiap kali saya masuk.
Bagaimanakah saya boleh memuatkan semula halaman (laksanakan semula kaedah dalam pengawal) setiap kali saya beralih ke halaman ini?
PS:

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

Ini tiada kesan pun

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

Saya mendapat acara perubahan negeri di sini, tetapi saya tidak tahu cara memuat semula $scope...

PS2:
Beginilah cara saya mencapainya

$scope.$on('$stateChangeSuccess', function(evt, next, current) {
    // 数据reload
});

Saya tidak tahu sama ada ini kaedah kasar...
Tetapi ini juga menimbulkan masalah baharu
Kaedah dalam $stateChangeSuccess akan dicetuskan dua kali.

淡淡烟草味
淡淡烟草味

membalas semua(4)
洪涛

Anda boleh menyimpan data ke dalam sessionStorage. Kemudian siarkan dalam acara mendengar $on di bawah. Kemudian dengar acara siaran ini dalam pengawal sub-lapisan.

迷茫

Tiada pemprosesan khas diperlukan Kod yang anda tulis dalam pengawal akan dilaksanakan secara automatik setiap kali anda beralih ke halaman ini

巴扎黑

Pengawal akan menjana tika baharu setiap kali setiap kali keadaan berubah, pengawal dan paparan adalah tika baharu. Ini juga konsisten dengan idea suntikan angularjs. Anda boleh log sendiri dalam kod pengawal.

迷茫

"Kaedah dalam $stateChangeSuccess akan dicetuskan dua kali" Ini kerana anda telah menulis maklumat Pengawal dalam kedua-dua paparan dan Laluan

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan