ディレクティブのリンク関数内にテンプレート URL を含めるにはどうすればよいですか? 私はこのようなことをしようとしています:
app.directive('something', function($compile,$timeout) {
return: {
link: function(scope,element,attrs) {
var htmlText = ???? // HOW TO INCLUDE A TEMPLATE URL HERE??
$compile(htmlText)(scope, function(_element,_scope) {
element.replaceWith(_element);
});
},
}
});
検索したところ、Angularディレクティブで使用できることがわかりましたtemplateUrl
。link
しかし、最終的にコンパイルされる内部に配置された変数にhtmlコードを保存しようとしています。通常、小さなコードの場合は、HTML を にインラインで入力するだけvar htmlText
です。しかし、コードがたくさんある場合は、それを別の html ファイルに保存してから、その変数に対してそれを呼び出します (上記の例のように)。だから私の質問は
1) 変数内のテンプレート URL へのリンクを追加するにはどうすればよいlink
ですか?
2) URL パスを追加する場合、index.html ファイルが置かれている場所からの相対パスを追加しますか、それともディレクティブ ファイルが置かれている場所からのパスを追加しますか?