2016-04-06 27 views
0

Ben aşağıdaki tanımıyla angularjs rota:Açısal js tarayıcı sayfa yenileme sonra sayfayı varsayılan yönlendirme değil

Şimdi
moduleA.config(function($routeProvider){ 
    $routeProvider. 
    when('/A',{templateUrl:'A.jsp'}). 
    when('/B',{templateUrl:'B.jsp'}). 
    when('/C',{templateUrl:'C.jsp'}). 
    otherwise({ 
     redirectTo: '/', 
     templateUrl: 'A.jsp' 
    }); 
}); 

, bir şey tıklayarak diyelim ve #/C/görünüm yönlendirilir. Sayfayı yeniledikten sonra, C'yi görüntülemek ve varsayılan görünüme değil yönlendirmek. Her sayfa yenilendikten sonra varsayılan sayfayı göstermem gerekiyor. Sayfayı yenilerken url'yi temel URL'ye değiştirmeyi düşündüm, böylece varsayılan sayfaya yönlendirilebilir. Angularjs yolu ile bunun için daha iyi bir alternatif arıyorum. Şimdiden teşekkürler. app.run() blok enjekte 'pencere' $ ve konumu bağımlılık ve ekleyin:

+0

çalışmalıdır 'http: //www.domain.co.il/#/C' ve bunu, C dönecektir varsayılan geri dönmek için sayfayı yenileyerek http: //www.domain.co.il/#/'gibi kök URL'nize gitmeli veya var olmayan bir URL'ye gitmelisiniz. – Dvir

+0

Bu beklenen davranış gerçekten. Http: // foo.bar/# C' var ve sayfayı yeniden yükleyin veya arkadaşınıza bir bağlantı veya yer işareti gönderin ve doğrudan beklenen görünüme gidin. Her sayfa yenilemesinde varsayılan görünüme yönlendirmek için muhtemelen .run’da bir şeyler yapmanız gerekecektir, ancak bu garip. Bu davranış için kullanım durumunuzu öğrenmek istiyorum – maurycy

+0

@Dvir: Bildiğim, ama asıl konu, angularjs yolu ile varsayılan sayfaya nasıl yönlendirilir, – Azim

cevap

2

Bu deneyin @maurycy gibi

window.onbeforeunload = function() { 
    $location.path('/'); 
}; 

yorumladı, sayfa zaman a varsayılan gitmek için kullanıcı istiyorum Kullanıcı uygulamanıza geliyor, etkinliğe ihtiyacınız yok.

sadece: En app.run içinde

$rootScope.$on('$routeChangeStart', function (event, next, current) { 
      if (!current) { 
       $location.path('/'); 
      } 
     }); 

() fonksiyonu. url gibi bir şey ise

O

+0

yalnızca uygulama yüklendiğinde gerçekleşen koşuya yeniden yönlendirme yapabildiğinde etkinlik dinleyicisi eklemeye ne dersiniz? – maurycy

+0

Uygulamaya, 'http: //www.domain.co.il/#/C' gibi belirli bir URL'ye sahip bir bağlantıdan gelirse, onun 'C' sayfasına gitmesini istiyorum. – IsraGab

+1

Çok teşekkürler, çok fazla zaman biriktirdin. Çalışmayacak başka pek çok şey deniyordum. – Azim