2016-09-23 129 views
1

我正在使用angular和ionic,我目前无法在导航栏中打印任何标题。离子 - 无法在导航栏上打印标题

我有一个相当复杂的设置与多个嵌套视图。

这里是国家的名单:

state('app', { 
    cache: false, 
    url: '/app', 
    abstract: true, 
    templateUrl: './sections/menu/menu.tpl.html', 
    controller: 'menuCtrl' 
}).state('app.home', { 
    url: '/home', 
    views: { 
    'appContent': { 
     templateUrl: './sections/menu/pageViewsContainer.tpl.html', 
     controller: 'homeCTRL' 
    }, 
    '[email protected]': { 
     templateUrl: './sections/home/home.tpl.html' 
    }, 
    '[email protected]': { 
     templateUrl: './sections/List/List.tpl.html' 
    } 
    } 
}).state('app.details', { 
    name: 'appDetails', 
    url: '/:ID', 
    views: { 
    'appContent': { 
     templateUrl: './sections/menu/pageViewsContainer.tpl.html', 
     controller: 'DetailsCtrl' 
    }, 
    '[email protected]': { 
     templateUrl: './sections/Details/Details/details.tpl.html' 
    }, 
    '[email protected]': { 
     templateUrl: './sections/List/List.tpl.html' 
    } 
    } 
}); 

我的主(摘要)状态的应用程序,并使用menu.tpl.html看起来像这样:

<ion-side-menus enable-menu-with-back-views="true"> 
<ion-side-menu-content class="custom-central-content"> 
     <ion-nav-bar class="bar-calm custom-header-bar"> 
      <ion-nav-buttons side="left"> 
       <!--<button class="button button-icon button-clear ion-home" menu-toggle="left"></button>--> 
       <button class="button button-icon button-clear ion-home" ui-sref="app.myHouse" id="AppMenuLeftIcon"></button> 
      </ion-nav-buttons> 

      <ion-nav-buttons side="right"> 
       <button class="button button-icon button-clear ion-navicon" menu-toggle="right" id="AppMenuRightIcon"></button> 
      </ion-nav-buttons> 
     </ion-nav-bar> 

     <ion-view ui-view="appContent"></ion-view> 

    </ion-side-menu-content> 

    <ion-side-menu side="right"> 
     <ion-header-bar class="bar-dark"> 
      ..... 

<ion-view ui-view="appContent"></ion-view>我现在用的模板从pageViewsContainer.tpl.html这是:

<ion-view> 
    <ion-content class="hg-split-page-container"> 
     <div ui-view="List" class="hg-split-page-zone-list has-header" nav-transition="none"></div> 
     <ion-nav-view name="Details" class="hg-split-page-zone-details"></ion-nav-view> 
    </ion-content> 
</ion-view> 

a然后在DetailsList里面打印我需要的两个视图。

问题是我需要能够为主(主页)页面设置一个静态标题,但是当我从范围内进入页面的名称时,动态更改它。

问题是我无法以任何方式打印任何标题(纯文本,而不是范围)。

我试着用(在pageViewsContainer.tpl.html):

<ion-view> 

    <ion-nav-title>View 1</ion-nav-title> 

    <ion-content class="hg-split-page-container"> 
     <div ui-view="List" class="hg-split-page-zone-list has-header" nav-transition="none"></div> 
     <ion-nav-view name="Details" class="hg-split-page-zone-details"></ion-nav-view> 
    </ion-content> 
</ion-view> 

<ion-view view-title="View 1"> 

     <ion-content class="hg-split-page-container"> 
      <div ui-view="List" class="hg-split-page-zone-list has-header" nav-transition="none"></div> 
      <ion-nav-view name="Details" class="hg-split-page-zone-details"></ion-nav-view> 
     </ion-content> 
    </ion-view> 

以及(内部细节模板):

<ion-view> 
    <ion-nav-title>View 1</ion-nav-title> 
    <ion-content class="has-footer has-header"> 
    ... 

<ion-view view-title="View 1"> 
     <ion-content class="has-footer has-header"> 
     ... 

但没有奏效。

对此提出建议?

回答

0

原来,我不得不改变我的导航不少,因为我用的是嵌套视图,父母,孩子们完全错误的方式。现在工作正常。

# This should show the navabar everytime the view is entered 
$scope.$on '$ionicView.enter',() -> 
    $ionicNavBarDelegate.showBar true 
0

尝试添加标题栏里面的标题命令

<ion-view> 
    <ion-header-bar class="bar-stable"> 
    <h1 class="title">View 1</h1> 
    </ion-header-bar> 
<ion-view> 

,或者尝试

<ion-view> 
    <div class="bar bar-header browse-header" align-title="center"> 
    <h1 class="title">View 1</h1> 
</div> 
<ion-content class="has-header"> 
</ion-content> 
</ion-view> 
+0

很抱歉,但并没有真正的工作:

另外,如果由于某种原因,标题导航栏它仍然没有显示出来,您可以在控制器(的CoffeeScript)使用这个力。我已经有了一个适用于所有apges的导航栏,理想情况下,我需要能够使用ion-nav-title指令在导航栏中为每个特定页面打印标题。 – Nick

+0

尝试在你的抽象控制器app.js中使用一个变量。将该变量添加到您的ion-nav栏中。在您的子视图中,加载子控制器时请继续更新变量。 –

+0

目前,直到我找出为什么ion-nav-title不起作用,我使用$ ionicNavBarDelegate.title在每个状态变化上显示它 – Nick