Компилирайте в AngularJS директиви

Здравейте. Днес ще анализираме какво представлява компилирането и защо е необходимо в директивите и най-важното е как се различава от функцията за връзка. Ако работите с функцията за връзка, тогава най-често тя ни е необходима, за да затворим някои събития на елемента, да закачим наблюдатели, да наблюдаваме как се променят атрибутите.
Защо се нуждаем от компилация? Компилирането се използва за едно единствено нещо. За да манипулираме самото маркиране на нашия елемент и шаблон.
Да опитаме. Нека създадем директива ui-source
Тази директива ще вземе парче html вътре в нас, ще го покаже на страницата и ще го увие в разкрасяване. Има такава страхотна библиотека, наречена google-prettify. Затова го свързах. Ако го свържете, тогава ще имате достъп до функции, които превръщат част от html в същия html, но с престижни класове и ако добавите css към тях, тогава ще имате красиво маркирано маркиране.
Сега ще се опитаме да направим това под формата на директива. Всичко, от което се нуждаете, е да включите Angular, PrettifyJS и prettify css файла. Css съдържа стиловете, които ще бъдат приложени към нашия html.
Сега нека напишем html, който ще поставим в рамка.
Сега в нашата директива ще напишем функцията за компилиране.
Получаваме елемент на входа. Нека го консолидираме. Тук е показана нашата маркировка. Ето нашия DOM елемент, който е достъпен за нас. Сега нека създадем предварително елемент, който ще обгърне всички маркировки.