2015-11-03 1 views
0

Я пытаюсь создать директиву, которая будет вставлять 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">&mdash;</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">&mdash;</span>`); 
       element.append(fill); 
      } 
     } 
    }; 
} 

Здесь переменная content не форматированный дата, это «{{certificate.documentDate | Дата:„ДД.ММ.ГГГГ“}}»

Как я могу получить содержимое из элемент после его компиляции?

ответ

Смежные вопросы