javascript - 访问主 Controller 中的 url 参数

标签 javascript angularjs angular-ui-router

我的应用程序有两个 Controller 。我有一个 pageCtrl,用来处理我的导航和侧边栏。我还有一个 calendarCtrl 用于处理页面上的数据。该 Controller 的配置如下所示:

$stateProvider
  .state('calendar', {
    url: '/calendar/:category/:competition/:team',
    controller: 'calendarCtrl',
    templateUrl: 'app/modules/calendar/calendarView.html',
  })

为了使导航正常工作,我还需要访问 pageCtrl 中的 :category/:competition/:team-params。我可以使用相同的方式配置它吗?类似于:

$stateProvider
  .state("page", {
   abstract: true,
   controller: 'pageCtrl',
   // params: :category/:competition/:team
})

编辑:在 calendarCtrl 中使用 $stateParams 效果很好。我只是不知道如何确保我的 pageCtrl 也可以读取网址。

最佳答案

由于您使用的是 ui.router,因此请在 Controller 中注入(inject) $stateParams,然后您就可以像这样访问这些值:

controller.js

function($stateParams){

$stateParams.category
$stateParams.competition
$stateParams.team

关于javascript - 访问主 Controller 中的 url 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30310096/

相关文章:

javascript - 限制 ng-repeat 内选中的复选框数量

javascript - Angular JS 中跨多个文件的 Controller

javascript - 在 ui-router 中将参数传递给子状态时遇到问题

javascript - 将一个函数作为另一个函数的参数传递给嵌套函数

javascript - Hammer.js:Android 网站捏合事件未触发

javascript - 即使使用空数组声明模块,Angular nomod 也会出错

javascript - 如何将服务注入(inject) AngularJS 的 UI-Router templateUrl 函数?

javascript - 在 JS 中更新 Bokeh 图

javascript - 我怎样才能在情节上获得静态工具提示,highstock?

html - ng-blur with uib-typeahead (ui-bootstrap)