Всім привіт. Сьогодні ми з вами розглянемо, що таке restrictions (обмеження) в директивах.
Створимо div і навіси на нього атрибут foo-bar
Потрібно пам'ятати, що директиви описуються через camelCase, а в шаблоні викликаються через тире.
Як ми бачимо, в браузері отрисовать наш DOM елемент і в консолі вивелося fooBar.
За замовчуванням директива буде спрацьовувати, коли ми створюємо її як атрибут або як елемент
Без різниці чи це атрибут або елемент, директива буде працювати однаково. Атрибут та елемент - це два обмеження (restriction) за замовчуванням.
Тільки що, в нашій директиві ми вказали, restrict в атрибут. Це означає, що директива буде реагувати тільки на атрибут, а на елемент не буде. У браузері ми бачимо, що у нас директива спрацювала тільки один раз.
Якщо ж ми поміняємо restriction на E, то директива буде спрацьовувати тільки на елементі.
За замовчуванням у директив стоїть запис EA. Це означає, що вони будуть спрацьовувати на елемент або атрибут. Це два найбільш використовуваних способу. Інші способи практично ніколи не використовуються, але ми їх все одно зараз розглянемо.
Третє обмеження називається class.
Тепер ми можемо створювати директиву як клас.
Зараз директива спрацювала тільки один раз за допомогою запису через клас.
Всі ці обмеження можна вказувати одночасно.
Як ми бачимо, в браузері консоль лог fooBar вивівся 4 рази. Якщо ви тепер побачите параметр restrict в директиві, не лякайтеся, це всього лише параметри ініціалізації директиви.