在angularjs中的ui-router中动态路由并更改url

时间:2014-11-23 06:46:40

标签: angularjs angular-ui angular-ui-router

我使用angularjs编写应用程序并使用ui路由器进行动态路由,我的应用程序有一个显示新闻列表的页面,当点击新闻时,新闻说明正在显示 例如,当我点击此新闻的链接时,如果我有id=3的新闻,则网址会更改为news/3,当点击有id=5网址的新闻更改为news/4时但我想将网址更改为news/subnews/thirdnews/subnews/fifth 我的更改网址和内容的代码就像这样

.state('news', {
            abstract:true ,
            url: "/news",
            templateUrl: "views/news/news.html",


        })
         .state('news.showAll', {

            url: "",
            templateUrl: "views/news/showAllNews.html",


        })
    .state( 'news.detail',{
                url:"/:newsId",
                templateUrl: "views/news/tmpShowDet.html",
                 controller:"newsShowing",
                    resolve:{
                            newsId: ['$stateParams', function($stateParams,newsId){
                            return $stateParams.newsId;
                                    }]
                        }



            })

显示的真实方式是什么,如news/subnews/....

1 个答案:

答案 0 :(得分:0)

你想要多少'subnews'?

将数字翻译成单词可能会有点棘手,而且口语特定。例如:在'subnews / 101'你想要'subnews / onehundredandone或subnews / onehundredandfirst或subnews / oneohone'。

我建议,如果你只有几个子新的可能性,按类别。在这种情况下,你似乎已经知道如何实现,或有权访问documentation for UrlRouteProvider

如果你有很多subnews,我会把参数保留为整数,这是相对口语不可知的。如果您不希望它显示,您可以随时屏蔽它或构建查找表等。

说到这一点,如果您仍想将整数更改为单词,只需使用查找和网址文档。

干杯,bro