Я пытаюсь создать директиву, которая будет вставлять span для заполнения пустых элементов.Получить содержимое элемента после его скомпилирования в директиве
Предположим, я хочу перечислить некоторые данные в таблице из области видимости. Я хочу использовать директиву вместо того, чтобы иметь значение ng-if
, а затем отобразить альтернативу. Как это:
<tr ng-repeat="certificate in vm.certificates">
<td fill-blank>{{certificate.documentDate | date:'dd.MM.yyyy'}}</td>
</tr>
Вместо:
<tr ng-repeat="certificate in vm.certificates">
<td>
<div ng-if="certificate.documentDate">{{certificate.documentDate | date:'dd.MM.yyyy'}}</div>
<div ng-if="!certificate.documentDate">—</div>
</td>
</tr>
Это код, который я получил до сих пор .. Единственная проблема заключается в том, что выражение {{certificate.documentDate | date:'dd.MM.yyyy'}}
еще не составлен.
export default() => {
return {
restrict: 'A',
link: function($scope, element, attrs) {
let content = element.text();
let pattern = /^\s+$/;
if (content.match(pattern) || content.length === 0) {
let fill = angular.element(`<span class="u-txt-faded">—</span>`);
element.append(fill);
}
}
};
}
Здесь переменная content
не форматированный дата, это «{{certificate.documentDate | Дата:„ДД.ММ.ГГГГ“}}»
Как я могу получить содержимое из элемент после его компиляции?
Хорошо, что было легко, спасибо :) – Johannes