2016-04-13 23 views
1

私は私のディレクティブを挿入したい角度。ディレクティブ内部のディレクティブをコンパイルする方法は?

<div id="content"><div> 

を持っています。

app.directive("test", function ($compile, $route) { 
    return { 
     restrict: "E", 
     templateUrl: "/Templates/test.html", 
     controller: function ($scope, $location) {}, 
     controllerAs: "page" 
    }; 
}); 

"/Templates/test.html":

... some code ... 
<category></category> 

ディレクティブのテストおよびカテゴリがサーバーからいくつかのデータをアップロードし、私は

html = $compile('<test></test>')($scope); 
$("#content").html(html); 

私の指示をしました。 カテゴリは動作しますが、テストでは機能しません。 なぜ誰も知っていますか? ありがとう

+1

まず、なぜあなたは#contentにこのようなあなたのを注入したいですか?アプリケーションの現在のパス/状態に応じてコンテンツを変更する場合は、ngRoute(ネイティブ)またはui-router(サードパーティのライブラリ)を使用します。あなたはディレクティブ以外のもので$/augular.elementを使用しないでください。 – Walfrat

答えて

0

命令を再コンパイルする必要があります。リンク機能の末尾に次のコードを追加します。ここ

$compile(element.contents())(scope); 

いくつかの有用な情報:$complie

+0

答えをありがとう。しかし、私はそれが私の場合をどのように使用するのか分かりません。 $ compile($ ')($ scope).contents())($ scope) - ?; – Badfishmaan

関連する問題