2016-12-26 28 views
1

我已經嘗試/使用所有可能的引用stackoverflow和其他教程,但無法獲得頁面標題,說明工作。 我的狀態代碼如下所示頁標題,描述使用angular-ui路由器

 $urlRouterProvider.otherwise('/home/welcome'); 
     $stateProvider 
     .state('home', { 
      url: "/home", 
      abstract: true, 
      templateUrl: "views/home_base.html", 
      controller : "HomebaseCtrl" 
     }) 

     .state('home.welcome', { 
      url: '/welcome', 
      templateUrl: 'views/welcome.html', 
      controller: 'WelcomeCtrl' 
     }) 

在我的控制器「WelcomeCtrl」文件我想設置頁面標題和描述的頁面。我已經使用rootScope,但rootScope值不綁定在index.html文件中。

在我的index.html文件

<html> 
    <head> 
    <title>{{pagetitle}}</title> 
    </head> 
    <div ui-view=""></div> 

路線home_base.html文件,該文件inturns路線welcome.html文件。

控制器

angular.module('ragamixApp') 
    .controller('WelcomeCtrl', function($rootScope){ 
    $rootScope.pagetitle = "Hi..I am Page Title"; 
    }) 

任何幫助,將不勝感激

+0

您的控制器?碼?更新以發佈 – Aravind

+0

您正在嘗試綁定應用程序外部的元素。如果你想訪問'{{pagetitle}}''它必須在受控的dom元素下。 –

+0

你的控制器在哪裏? –

回答

0

你只要試試這個。

如果你看看ui-router示例應用程序,他們使用angular .run塊將$ state變量添加到$ rootScope中。

.run([ '$rootScope', '$state', '$stateParams', 
function ($rootScope, $state, $stateParams) { 
    $rootScope.$state = $state; 
    $rootScope.$stateParams = $stateParams; 
}]) 

設置狀態以同樣的方式:

.state('home', { 
    url: '/home', 
    templateUrl : 'views/home.html', 
    data : { pageTitle: 'Home' } 
}) 

的Html

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

我曾試過,但沒有運氣。我使用

是否存在嵌套問題?我的意思是在index.html文件中,我使用
來路由我的抽象狀態,然後在那個HTML文件中,我再次使用
來路由welcome.html內容?也是角1.6是我使用 – Subhajit

+0

你檢查這一點。 https://github.com/angular-ui/ui-router/wiki/nested-states-&-nested-views –