在范围

时间:2016-10-27 17:05:16

标签: angularjs angular-ui-router

是否可以从状态定义中自动在控制器中设置$ scope值?

例如,如果我有州定义

$stateProvider.state("page", {
  url: "/page", controller: PageController, template: "<div></div>"
}

我导航到带有如下参数的页面:

$state.go("page", {param1: 'value1'});

是否可以使用状态定义在PageController $ scope中注入param1,以便能够在PageController中调用$ scope.param1并为其提供值&#39; value1&#39;?

显然,我可以使用

在PageController中设置它
$scope.param1 = $stateParams.param1;

但是我想看看我是否可以将其作为状态定义的一部分包括在内(例如可能在解决方案中)。

1 个答案:

答案 0 :(得分:0)

试试这个:

路由:

.state('page', {
      url: '/page',
      template: '<div></div>',
      controller: 'PageController',
      data : {param1 : 'value1'}
  })

PostController:

controller('PageController', function($state, $scope){
      console.log($state.current.data.param1);
})