2016-03-10 105 views
1

我只是有角度路線的問題。 我有一個singlePage應用程序與4個不同的意見。 我使用的是ui.router的$stateProvider。 主要觀點是在路線上:https://testsite.com/ 如果我想要進入如下網頁:https://testsite.com/view1我有一個錯誤。這是工作,如果我在主視圖,然後改變上的click事件的路線,如:角度絕對路線和路線/狀態提供者

$scope.go = function (path) { 
    $location.path(path); 
}; 

,但如果我給了瀏覽器中的絕對URL,它不會工作。

這裏是我的index.html:

<body> 
<div ui-view></div> 
<script type="text/javascript" src="assets/javascript/libs/angular.min.js"></script> 
<script type="text/javascript" src="assets/javascript/libs/angular-route.min.js"></script> 
<script type="text/javascript" src="assets/javascript/libs/angular-ui-router.min.js"></script> 
<script type="text/javascript" src="assets/javascript/app.js"></script> 
</body> 

廠景:

<div class="first-container"> 
//some content here 
</div> 

視圖2:

<div class="second-conteiner"> 
//some content here 
</div> 

和我App.js:

var app = angular.module('SofticApp',['ngRoute', 'ui.router']); 
app.config(function($routeProvider,$stateProvider, $urlRouterProvider, $locationProvider){ 
    $locationProvider.html5Mode({ 
    enabled: true, 
    requireBase: false 
    }).hashPrefix('!'); 
$stateProvider 
    .state('/', { 
    url: '/', 
    templateUrl: 'assets/views/view1.html', 
    controller: 'viewFirstController' 
    }) 
    .state('/view2',{ 
    url: '/view2', 
    templateUrl: 'assets/views/view2.html', 
    controller: 'viewSecondController' 
}); 

感謝您的幫助!

回答

1

不使用絕對URL,使用路徑唯一

選擇使用

$state.go('view2') 

通知,國家名稱應該是「視圖2」而不是「/視圖2」