2016-10-05 6 views
0

私はIonic Projectのui-router AngularJSで作業しています。私は子供のテンプレートを<ion-nav-view>タグで入れ子にした抽象的な状態を持っています。質問は、すべての子供のテンプレートのために表示される抽象的な状態のテンプレートにいくつかのデフォルトデータを表示できますか?いいえ、なぜならば。私はこの単純な例を試しましたイオンをテンプレートとした抽象的な状態

<ion-view view-title="MyView"> 
    <div> 
    <h1>Welcome</h1> 
    </div> 
    <ion-nav-view name="ChildContent"></ion-nav-view> 
</ion-view> 

しかし、メッセージへようこそは表示されません。 divのスペースはありますが、何も表示されません。

答えて

1

これを行うことができます。すべての子テンプレート内で同じ情報を繰り返さないようにしたのは、独自のテンプレートでカスタムディレクティブを作成し、このディレクティブをすべての子テンプレートに含めることです。ですから、操作する場所は1つだけです。これは、Angularドキュメンテーションの "Template-expanding directive"セクションです。詳細については、enter link description hereのリンクを参照してください。それが他の誰かを助けることを願って:)。

0

抽象状態用のコントローラを定義することができ、さまざまな他のビューで表示できるデフォルト値が設定できます。あなたはまた、私は、私は解決策を見つけたと思う機能で

.state('app', { 
    url: '/app', 
    abstract: true, 
    templateUrl: 'templates/menu.html', 
    controller: 'AppCtrl' 
}) 

.controller('AppCtrl', function($scope){ 
    $scope.title = "Test title"; 
}) 

OR

angular.module('started.controllers', []) 

.run(function($window, $rootScope) { 
    $rootScope.title = "Test title"; 
}); 

<ion-view view-title="{{title}}"> 
    <div> 
    <h1>Welcome</h1> 
    </div> 
    <ion-nav-view name="ChildContent"></ion-nav-view> 
</ion-view> 
+0

Hey!あなたの応答に感謝しますが、私の問題は、ウェルカムテキストがスコープにリンクされた変数ではなく、子供の意見に表示されないということです。 –

+0

私が知っていることによると、変数の値は$ scopeコントローラとその内容だけです。任意のコントローラからアクセスできる変数を生成するには、$ rootScopeであるか、それらの値を提供する何らかのサービスを生成する必要があります。 $ rootScopeはあなたのアプリケーションの任意のフィールドからMySQLを管理することしかできないルートです。そのため、$ scopeは下位にあり、したがって任意のコントローラに属します。 – sioesi

+0

Welcomeメッセージとの間に全てを入れていましたが、私はウェルカムメッセージを見ましたが、子供の見解の内容は表示しません。 –

関連する問題