如何使用自定义URL实现Rooting angularJS

时间:2015-12-01 16:15:00

标签: angularjs routing

我想在我的应用程序的URL上有这样的:

http://localhost:9000/#/?id=XYZ

我没有找到如何在angularjs app模块上配置它 我的实现是这样的:

angular.module('APP', ['ngRoute'])
.config(function ($routeProvider) {
  $routeProvider.when("/?id="+":id", {
    templateUrl: "views/sign/sign.html",
    controller: "SignCtrl"
  });
  // $locationProvider.html5Mode(true);
});

但它不起作用。

2 个答案:

答案 0 :(得分:1)

您不必指定

就像

angular.module('APP', ['ngRoute'])
.config(function ($routeProvider) {
  $routeProvider.when("/", {
    templateUrl: "views/sign/sign.html",
    controller: "SignCtrl"
  });
  // $locationProvider.html5Mode(true);
});

并在你的SingCtrl中。

当您编写$ routeParam时,您将拥有作为查询参数传递的params对象。

所以如果你传递的是?id = any

,你将获得$ routePara.id

如果你想抓住查询参数,不必担心吗?id = abs& name = test

答案 1 :(得分:0)

您可以添加"网址"属性为$ routeProvider对象。

类似的东西:

$ routeProvider.when(" /?id =" +":id",{
    templateUrl:" views / sign / sign.html",
    url:'您要使用的网址',
    控制器:" SignCtrl"
  });

PS:我建议您使用ui-router而不是ngRoute。稍后再查看。