Я создал очень простую директиву, которая отображает пару ключ/значение. Я хотел бы, чтобы иметь возможность автоматически скрывать элемент, если транслируемый контент пуст (либо нулевая длина, либо просто пробел).Как скрыть элемент, если содержимое вложенных файлов пуст?
Я не могу понять, как получить доступ к контенту, который переводится из директивы.
app.directive('pair', function($compile) {
return {
replace: true,
restrict: 'E',
scope: {
label: '@'
},
transclude: true,
template: "<div><span>{{label}}</span><span ng-transclude></span></div>"
}
});
Например, мне нужен следующий элемент для отображения.
<pair label="My Label">Hi there</pair>
Но следующие два элемента должны быть скрыты, поскольку они не содержат текстового содержимого.
<pair label="My Label"></pair>
<pair label="My Label"><i></i></pair>
Я новичок в Angular, поэтому может быть отличная ручка такого рода из коробки. Любая помощь приветствуется.
+1 для любого ответа, который показывает пример использования для esoteric transcludeFn :). –
в transcludeFn, 'clone.text(). Trim(). Length' будет немного точнее – alalonde
+1 спасибо, это просто спасло меня много времени. – cgTag