【问题标题】:How to change pageTitle dynamically on state change angularjs inside state routing如何在状态路由内的状态更改angularjs中动态更改pageTitle
【发布时间】:2017-09-21 10:31:39
【问题描述】:

我想更改状态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');  

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

【问题讨论】:

标签: javascript angularjs angular-ui-router state


【解决方案1】:

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

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

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

而且你没有包含任何 HTML,所以不要忘记将值绑定到 title 标记,如下所示:

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

【讨论】:

  • 它不会像这样工作。你用它作为参数,它不会反映。
  • 顺便问一下{notify: false}是做什么的?
  • @RamsingNadeem, notify: false 抑制 $stateChange 事件,在这种情况下我认为不需要。
  • 好的;凉爽的。什么时候可以使用?它是否连接到 {reload: true} 或 {reload: 'stateName'}?
  • @RamsingNadeem,“它是否连接到 {reload: true} 或 {reload: 'stateName'}?”真的不能说
猜你喜欢
  • 2019-05-20
  • 2020-12-08
  • 2020-04-26
  • 2016-10-21
  • 1970-01-01
  • 2016-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多