【问题标题】:In AngularJS route is it possible to add default query parameters?在 AngularJS 路由中是否可以添加默认查询参数?
【发布时间】:2014-05-17 00:22:54
【问题描述】:

如果这是我的路由设置,我希望“否则”路由重定向到“/inbound?page=0&size=20&sort=number,desc”,但路由中的“?”转义为“%3F ”。

  .config(function ($routeProvider) {
    $routeProvider
      .when('/outbound', {
        templateUrl: 'views/shipments.html',
        controller: 'ShipmentCtrl'
      })
      .when('/inbound', {
        templateUrl: 'views/receipts.html',
        controller: 'ReceiptsCtrl'
      })
      .otherwise({
        redirectTo: '/inbound'
      });
  });

【问题讨论】:

    标签: angularjs


    【解决方案1】:

    继续上一个答案,您应该在入站路由控制器中设置默认值,例如

    var search=$location.search();
    var page=search.page||0;
    var size=search.size||20;
    var sort=search.sort||'number,desc';
    

    执行此操作的确切方法取决于您对空字符串和 0 大小请求的允许程度,但这有点意思

    【讨论】:

    • 这确实是要走的路 :) 谢谢。
    【解决方案2】:

    您可以在控制器的起始行使用 $location.search()。它会将get参数添加到url。

    https://docs.angularjs.org/api/ng/service/$location

    【讨论】:

      猜你喜欢
      • 2012-09-13
      • 1970-01-01
      • 2014-07-12
      • 1970-01-01
      • 2017-01-17
      • 1970-01-01
      • 2019-12-05
      • 2012-08-06
      • 1970-01-01
      相关资源
      最近更新 更多