@faragly

Как вставить шаблон директивы, ПОСЛЕ элемента, не заменяя его в AngularJS?

Доброго времени суток! Задача создать всплывающий dropdown ниже input поля, у input'а ставлю my-directive, но вот что написать в коде директиву чтобы элемент не заменялся (replace: false вставляет шаблон директивы в input, что тоже бессмысленно). Не хочется также выносить директиву ниже текстового поля, тогда связь директивы с полем потеряется. Вариант переместить input внутрь шаблона и делать замену тоже не самый лучший, потому что если пользователь хочет задать какие то стили, атрибуты, то они должны быть и шаблоне, который заменит исходный input. Какие есть варианты решения данной задачи?
  • Вопрос задан
  • 326 просмотров
Решения вопроса 1
AMar4enko
@AMar4enko
Не самое изящное решение, но можно на pre-link стадии директивы сделать вручную append после input и скомпилить.
Вот вам пример: codepen.io/AMar4enko/pen/QbxqVY
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
miraage
@miraage
Старый прогер
Вообще-то, дропдаун должен вставляться в конец <body> и быть фиксированным, с offset top/left.
Ответ написан
DigitalSmile
@DigitalSmile
http://brainstorage.me/digitalsmile
Сделайте две директивы - одна будет добавлять dropdown, вторая реализует сам виджет. Соедините их при помощи этого.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы