2015-11-05 81 views
1

我建立一個角度應用程序,並使用標準的index.html文件加載不同的index.html:如何有條件地angularjs

<!doctype html> 
 
<html lang="en" ng-app="myApp"> 
 
<head> 
 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.css"> 
 
    <script src="bower_components/angular/angular.js"></script> 
 
    <script src="bower_components/angular-route/angular-route.js"></script> 
 
    <script src="js/app.js"></script> 
 
    <script src="js/controllers.js"></script> 
 
    <script src="https://code.jquery.com/jquery-2.1.3.js"></script>  
 
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.js"></script> 
 
</head> 
 
<body> 
 

 
    <div ng-view></div> 
 

 
</body> 
 
</html>

我想什麼如果用戶未登錄到應用程序,則do有一個不同的index.html或加載的「home.html」文件。 home.html將是一個靜態頁面營銷網站,擁有自己的設計和css/js。我希望從'/'路線和其他路線由角應用程序處理該頁面。

我將如何動態加載不同的起始html文件?

+0

採用javascript的位置這樣的窗口.location ='您的網頁網址'; – Shohel

+1

你可以使用ng-include和不同的html文件取決於你的狀態(登錄或不),例如:'ng-if = logged ng-include =「登錄模板」' – Errorpro

+0

你的問題有點寬泛。這個「索引」除了腳本之外沒有任何獨特的元素,所以沒有必要替換這個文件。如果你想控制「home」內容的角度,那麼它應該是一個角度的路線,'home.html'應該是一個加載到'ng-view'中的模板。如果你不希望角度控制內容,那麼它應該是服務器上的一個路徑,角度根本不知道。 – Claies

回答

1

路由到另一個html的邏輯應放置在您的登錄模塊中。這可能與Angularjs被不相關

0

有一些代碼從外部或內部角應用

$location.url('/RouteTo/index'); 

$location.url('/index'); 

$window.location.href="http://www.domain.com/home"; 

window.location = "http://www.domain.com/home"; 

的重定向另一個頁面,您可以讓您的主機應用$window.location.host