如何在状态路由

时间:2017-09-21 10:31:39

标签: javascript angularjs angular-ui-router state

我想更改状态Provider中的pageTitle内部数据。

$stateProvider.state(test, {
  url: '/test',
  views: {
    main: {
      controller: 'TestCtrl',
      templateUrl: 'admin/test.tpl.html'
    }
  },
  data: {
    pageTitle: 'Need some dynamic title',                        
  },                    
});

这里我想动态设置页面标题可能在$state.go()内的某个地方。

我尝试使用

//The controller from where the state is called and we got to know what the title is
$state.get('test').data.pageTitle = $scope.title;
$state.go('test');  

但什么都没发生。 请帮忙。

1 个答案:

答案 0 :(得分:1)

$state.go()内你可以这样做:

$state.go('test', {pageTitle: $scope.title});

(或者data.pageTitle: $scope.title,我不完全确定。)

并且您没有包含任何HTML,因此请不要忘记将值绑定到title标记,如下所示:

<title ng-bind="$state.current.data.pageTitle"></title>