ui.router angularjs中的动态路由

时间:2015-10-07 14:27:19

标签: angularjs

我有以下情况。 我正在尝试为动态侧边栏编写路由系统。 我的侧边栏包含多个项目(至少10个),每个项目至少有一个标签(可能是3个或5个......)。以下应该提出一个想法:

item1 - > tab1-tab2-tab3 ...

第2项 - > tabA-tabB-tabC ...

itemX - > tabX-tabY-tabZ ...

我知道使用state $ stateprovider你可以设置url和templateUrl来加载不同的html内容(外部html文件),具体取决于用户点击的内容。 所以要做到这一点,我必须编写一堆状态,我觉得这将是糟糕的编程,并且必须有一种方法来根据用户点击的内容进行动态路由。我谷歌搜索它,我无法找到正确的答案。

诀窍是我必须使用ui.router。我可以阅读/使用任何想法或指南来实现这一目标吗?

1 个答案:

答案 0 :(得分:1)

我认为,因为你的侧边栏是动态的,它来自某些数据源。您可以将该数据源配置为包含路由所需的所有信息,或者使用约定。类似的东西:

angular.forEach(states, function(state) {
    $stateProvider.state('/' + state, {
            url: '/' + state, 
            templateUrl: 'views/' + state + '.html',
            controller: state + 'Controller'
      }) ;
})