2013-06-19 55 views
8

我正在實現AngularUI的路由,並且似乎缺少有關如何配置默認URL的信息。看起來下面的代碼會默認用戶爲/dashboard/tree,但是如果我刷新頁面,則url附加了另一個/dashboard,所以我最終以/dashboard/dashboard/dashboard/dashboard/tree結束。如何設置默認的網址/路線?

如何在用戶第一次訪問該頁面時正確設置默認URL而不會有此附加問題?

config(['$urlRouterProvider', '$stateProvider', function($urlRouterProvider, $stateProvider) { 
    $urlRouterProvider.otherwise('/dashboard/tree'); 

    /* URL mappings */ 
    $stateProvider. 
     state('dashboard', { 
      url: '/dashboard', 
      views: { 
       'page': { 
        templateUrl: '/partials/admin/dashboard.htm' 
       } 
      } 
     }). 
     state('dashboard.tree', { 
      url: '/tree', 
      views: { 
       'content': { 
        templateUrl: '/partials/admin/tree-overview.htm' 
       } 
      } 
     }); 
}]) 
+1

試試這個: '。否則({redirectTo: 「/儀表板/樹」})' – YAAK

回答

5

不管你信不信,這可能是一個角度爲1.1.5的錯誤/功能(重新加載東西到網址)。

試着在你的頭上設置這樣的:

<base href="/"></base> 
+1

具有'base'標籤保持URL從附加到本身。但是,當我的基地是'/ admin'時,我仍然需要在/路由中包含/ admin用於AngularUI – Webnet

+0

是的,這是有道理的。整個appBase基礎的東西在運動中。請參閱https://github.com/angular/angular.js/pull/2969。我正在努力保持併發,並告知如何將這將氾濫。 – laurelnaiad