2016-04-12 852 views
0

我使用下面库角UI路由器动态路由

我所看到的是动态路由 为前:对于路线localhost:8080/#/about它起作用,比方说routedFunction它定义了模板HTML <div>about me .. </div>

,如果有人去localhost:8080/#/abc; routedFunction会得到一个路由URL作为参数ABC,它会知道显示..可能是<div>abc xyz abc</div>

我无法找到一个解决方案。

回答

0

您需要使用路由器。

$route角文档可在@https://docs.angularjs.org/api/ngRoute/service/ $路线

请找出并看看在文档下面的例子可以找到。这个例子展示了如何改变URL哈希导致$ route匹配一个路由与URL,并且ngView拉入部分。

<div ng-controller="MainController"> 
    Choose: 
    <a href="Book/Moby">Moby</a> | 
    <a href="Book/Moby/ch/1">Moby: Ch1</a> | 
    <a href="Book/Gatsby">Gatsby</a> | 
    <a href="Book/Gatsby/ch/4?key=value">Gatsby: Ch4</a> | 
    <a href="Book/Scarlet">Scarlet Letter</a><br/> 

    <div ng-view></div> 

    <hr /> 

    <pre>$location.path() = {{$location.path()}}</pre> 
    <pre>$route.current.templateUrl = {{$route.current.templateUrl}}</pre> 
    <pre>$route.current.params = {{$route.current.params}}</pre> 
    <pre>$route.current.scope.name = {{$route.current.scope.name}}</pre> 
    <pre>$routeParams = {{$routeParams}}</pre> 
</div> 

这是定义不同路线的另一个示例。

scotchApp.config(function($routeProvider) { 
    $routeProvider 

     // route for the home page 
     .when('/', { 
      templateUrl : 'pages/home.html', 
      controller : 'mainController' 
     }) 

     // route for the about page 
     .when('/about', { 
      templateUrl : 'pages/about.html', 
      controller : 'aboutController' 
     }) 

     // route for the contact page 
     .when('/contact', { 
      templateUrl : 'pages/contact.html', 
      controller : 'contactController' 
     }); 
}); 

学习和了解路由器/路由省事@https://scotch.io/tutorials/single-page-apps-with-angularjs-routing-and-templating

+0

不行。请仔细看问题..路线网址不会提前 – andNn

+0

定义你仍然需要使用路线和通过/访问动态信息通过$ routeParams @ https://docs.angularjs.org/api/ngRoute/service/$routeParams –

+0

我有ui路由器中的stateParams,问题不是params;问题在于它没有被定义时的路由;否则路由在ui路由器,但它改变urll – andNn