AngularJS: как получить нескомпилированное содержимое директивы

Я пытаюсь использовать преобразованное содержимое директивы (исходное содержимое директивы, а не шаблон) в качестве HTML-шаблона строки в сетке.

<grid attrs="...">
    <action-column-template>...(html I need)...</action-column-template>
</grid>

Идея состоит в том, что мне нужен необработанный HTML-код шаблона столбца действия (не скомпилированный, не привязанный к какой-либо области).

Я не контролирую создание каждой строки, поэтому я не могу вручную привязать этот шаблон действия к области действия каждой строки с помощью transclude(rowScope). Мне просто нужно это как обычный html (т.е. с нетронутыми "{{ }}" и внутренними директивами).

Запуск функции transclude() fn из функции ссылки дает мне включенный контент, но привязанный к области видимости и с расширенными внутренними директивами. И html() параметра tElem функции компиляции возвращает HTML шаблона директивы, а не содержимое, которое нужно включить.

Итак, вопрос: могу ли я получить содержимое директивы, подлежащее включению, в ее функциях компиляции, контроллера, preLink или postLink в виде нескомпилированного HTML?

Спасибо.


person cipak    schedule 17.10.2014    source источник
comment
вы пробовали tElem.contents() из компиляции?   -  person New Dev    schedule 20.10.2014
comment
конечно. Он возвращает содержимое шаблона директивы.   -  person cipak    schedule 30.10.2014


Ответы (1)


Установите terminal: true и вручную скомпилируйте директиву.

person Chris Fan    schedule 03.12.2014
comment
Установить terminal: true для какой директивы? И вручную скомпилировать какую директиву? - person pilau; 09.01.2018