0
我遇到了我的代碼問題,通過玩一點我找到了一個解決方案,但我不知道它爲什麼工作。事情是這樣的:
// recompile all audio buttons
angular.element(textAsDom).find('sound-button').each(function(key, element) {
$compile(angular.element(element))(scope);
});
我有一個原始的HTML作爲參數,和裏面我正在尋找一個名爲「soundButton」的指示和我編譯它們以使用其連接的示波器功能和屬性。
然而,我的第一個解決辦法是做這樣的:
// recompile all audio buttons
angular.element(textAsDom).find('sound-button').each(function(key, element) {
var compiledSound = $compile(angular.element(element))(scope);
angular.element(element).replaceWith(compiledSound);
});
所以我首先編譯soundButton並將其鏈接到的範圍和我所得到的一個綁定元素。然後我用綁定元素替換原始元素。但是,然後所有角度髒檢查或事件處理程序不再工作。
至於現在我的問題已經解決,但是爲了理解爲什麼它不起作用,我問你們是否可以解釋一些關於這個深奧的東西的燈。
感謝
這已經是一個指令,但問題是我從數據庫中獲取rawHtml,因此我需要手動編譯它。 – KayZee
好的,你有什麼機會可以用小提琴來證明這一點? –
如果添加replace:true(就像我在編輯中做的那樣)是否可以解決您的問題? –