Наследование директив в Angular Light и другие «плюшки»

Недавно после прочтения одной статьи Армина Роначера, я подумал, что неплохо было бы иметь возможность наследовать директивы и вскоре реализовал это в своей библиотеке Angular Light (aLight). Вообщем все наследование сводится к разбиению директивы на методы, которые в дальнейшем можно переопределить. Вот пример al-show-slow на основе al-show, где происходит медленное появление и скрытие элемента, выглядит так: alight.directives.al.showSlow = function (element, name, scope, env) { var dir = alight.directives.al.show (element, name, scope, env); // Создание родительской директивы dir.showDom = function () { // Подменяем «show» $(element).fadeIn (1000); } dir.hideDom = function () { // Подменяем «hide» $(element).fadeOut (1000); } return dir; } Пример наследования al-show Ещё один пример al-value-delay на основе al-value, где данные попадают в модель с задержкой (без повторов). Так же тут возможно множественное наследование, но пока не было в этом необходимости.Читать дальше →

© Habrahabr.ru