2013-12-19 3 views
7

Можно ли удалить или отключить HTML-комментарии, угловые производит?удалить угловые комментарии от html

<ol class="items"> 
    <!-- ngRepeat: item in list | orderBy:'time':true --> 
</ol> 

Ее правила отключающая CSS, которые используют :empty псевдо класса.

ol:empty { 
    content: "No results"; 
} 

для того, чтобы правила, которые должны применяться, там должно не быть никаких пробелов или комментариев:

<ol></ol> 
+1

В качестве альтернативы - вы можете использовать 'ng-show' на'! List.length' –

+1

возможный дубликат [Удалить HTML-комментарии помощника в Angular JS?] (Http://stackoverflow.com/questions/20508412/remove -helper-html-comments-in-angle-js) – zsong

+1

может использовать 'ng-if' в разметке вместо css для создания' No Results' – charlietfl

ответ

2

я в конечном итоге добавив класс .empty с ng-class="{ empty: !list.length }" и применяя правило CSS, что путь, не полагаясь на pseudoelement :empty.

0

Хотя не самый эффективный или прямой способ сделать это, вы можете использовать JavaScript для удаления содержимое элементов. Нечто подобное должно работать:

document.getElementsByClassName('items').innerHTML = ""; 

Я не знаю, что такая структура у вас есть, но я уверен, что вы могли бы проникнуть в это до загрузки CSS ...

Редактировать

После прочтения сообщения, связанного с @zsong и этим сообщением here, вы можете в конечном итоге сломать Angular, пытаясь это сделать. Только один способ узнать, я думаю!

1
$compileProvider.debugInfoEnabled(false); 

Но он может сломать некоторые плагины, у которых есть ссылки на угловые комментарии.

Смежные вопросы