2016-05-22 20 views
3

AngularアプリではA.htmlまたはコントローラをA.htmlまたはAControllerを複製せずにコントローラに含めてB.htmlに含める必要があります。複数のテンプレート/コントローラを同じHTMLで使用できない

私はA.htmlに次のように書きましたが、それはindex.coffeeが含まれているものです後のアプリのコード構造である

src 
├── html 
│   ├── v1 
│   │   ├── A.html 
│   │   ├── B.html 
├── index.coffee 
├── index.html 
├── js 
│   ├── controllers 
│   │   ├── v1 
│   │   │   ├── AController.js 
| │   │   ├── BController.js 
└── sass 
    ├── v1 

<div ng-include src="src/html/v1/A.html"></div> 

を動作しませんでした -

$routeProvider 
    .when("/", 
     { 
     templateUrl: "src/html/v1/A.html", 
     title: "A" 
     controller: "AController" 
     }) 
    .when("/A", 
     { 
     templateUrl: "src/html/v1/A.html", 
     title: "A" 
     controller: "AController" 
     }) 
    .when("/B", 
     { 
     templateUrl: "src/html/v1/B.html", 
     title: "B" 
     controller: "BController" 
     }) 
    .otherwise({ redirectTo: "/" }) 

私はここに何が欠けているかお勧めします。

PS:この質問に対する回答は、他の同様の質問には答えがあるかもしれませんが、私は最初に答えを見つけることができませんでした。この質問のアップボントは、それが関連性を保持していることを明確に示しています。

答えて

1

でなければなりません。 docsから

<div ng-include src="'src/html/v1/A.html'"></div> 

:だから、それを変更

角度表現がURLに評価します。ソースが文字列 の場合は、一重引用符で囲んでください(例: src="'myPartialTemplate.html'"

+1

の脇に、このメカニズムはコントローラを含んでいません。 HTMLテンプレートのみが含まれています。 – comiventor

1

それはng-includeためsrc属性は、文字列を受け取り<div ng-include src="'src/html/v1/A.html'"></div>

+2

あなたが答えを最初に投稿したので、私はあなたにupvoteを与えましたが、私はshashank-agrawalの答えをよりよく説明されているように正しくマークしました。 – comiventor

+1

十分です。 :) –

関連する問題