2016-08-13 47 views
2

相對較新的有角工作,但我似乎無法找到任何網址別名或完全可選的路徑參數(使用ui.router的$stateProvider當像{/var1}/:var2角ui.router,創建可選的第一路徑帕拉姆

我期待有以下兩種有效途徑,最好在同一個國家的聲明,這樣我可以調用使用一個或兩個PARAMS狀態的變化。

/var1/var2 
/var2 

當然,我可以用火柴像以下,但這些都不是真正的解決方案。

  • /:var1/:var2,但是這仍然需要用於VAR1(//var2
  • /:var2?var1/:var2/:var1?一個空值,但是這些都不是在上下文中 理想的,因爲它們重新排列路徑。
  • /:var1/:var2 AND /:var2作爲單獨的狀態,但我可能需要更密切地管理狀態更改,並根據哪些參數可用。

任何信息指向我在正確的方向將不勝感激。

並快速精簡上下文的示例。

$stateProvider .state('app.view', { url : '/:var1/:var2' }).state('app.view2', { url : '/:var2' });

回答

3

也許這會工作

.state('app.view', { 
    url: '/:var1/:var2', 
    templateUrl: 'yourTpl.html', 
    controller: 'YourCtrl', 
    params: { 
     var1: {squash: true, value: null} 
    } 
}) 

壁球配置默認的參數值是如何在這個URL時,當前的參數值是一樣的默認值

+0

真棒,南瓜正是我想要完成的事情。謝謝一堆。 – haganbmj