0
ボタンのクリック時に同じHTMLテンプレートを挿入しています。角度指定付きの入力タグに名前を入力した後です。
これらは私のディレクティブは以下のとおりです。
<div class="new_folder">
<div class="folder_icon">
<div class="folder_icon_border">
<div class="folder_icon_bubble"></div>
<div class="folder_icon_bubble"></div>
<div class="folder_icon_bubble"></div>
</div>
</div>
<div class="folder_name">
<p class="folder_name_txt">{{folder_name}}</p>
</div>
</div>
私が初めて注入するときに、すべてが良いように見えますが、ときに私は両方の二度目の注入:これは私が注入てる私のHTMLテンプレートが
$scope.folder_name = '';
$scope.folder_count = 0;
cheapWatcherApp.directive("addfolder", function() {
return {
restrict: "E",
templateUrl: chrome.extension.getURL('views/folderName.html')
}
});
cheapWatcherApp.directive("addfolder", function ($compile, $templateRequest) {
return function ($scope, $element, $attrs) {
$('.createBtn').bind("click", function() {
$scope.folder_count++;
$scope.folder_name = document.getElementById('folder_name').value;
$templateRequest(chrome.extension.getURL('views/newFolder.html')).then(function (html) {
var template = angular.element(html);
angular.element(document.getElementById('space-for-folders')).append($compile(template)($scope));
});
});
};
});
です1番目と2番目のテンプレートは同じ値になります。それは3番目と4番目のように起こります...
私が理解しているのは、最初のinje後の$ templateRequest ctionは$ templateCacheにテンプレートを置きます。そのため、すべてのテンプレートが同じ名前になります。
どのようにしてこの問題を克服し、すべての注入に異なる名前を付けることができますか?
この回答を確認してください:http://stackoverflow.com/a/14721340/1615594 – tsuz
@ user013948それはキャッシュのクリーニングに役立たないので、おそらくキャッシュの問題ではありません... –