2016-11-28 1 views
0

Так что я использую Angular 2 с мопсом в качестве шаблона, с небольшой формой подписки на электронную почту в качестве компонента. Я хотел, чтобы этот компонент отправил значение формы (электронная почта) как @Output, поэтому мой AppComponent может использовать значение в методе для фактической подписки на пользователя.Могу ли я получить @Output из мопса mixin?

выход Этот информационный бюллетень компонента будет осуществляться с помощью сорбент в мопса:

newsletter-form((onSubscribed)="subscribeMail($event)") 

Это идеальный вариант, и я могу получить значение в App, за исключением того, я принял это NewsletterComponent из приложения непосредственно, поставить его в мопс-микс, как нижний колонтитул.

Итак, теперь AppComponent больше не может захватить значение, поскольку шаблон формы не находится непосредственно в шаблоне приложения ... Возможно ли, чтобы я мог получить доступ к значению вывода в этом mixin?

может быть, выход в Mixin ... я не знаю ...

Я знаю, что я могу использовать компонент формы непосредственно, но это повредило бы мою архитектуру и не будет .. хорошо, довольно ,

Заранее спасибо

+1

использовать службу :) всегда использовать услугу для связи между родительскими/дочерними компонентами. Это чисто и эффективно – PierreDuc

+0

Это на самом деле хорошая идея! я дам ему шанс, спасибо! – Pstr

ответ

0

Я нашел проблему. Он должен работать, но похоже, что mixin вышел из приложения. На самом деле произошло то, что mixin был обновлен, но шаблон приложения не был, поэтому приложение не получило изменений из-за дифференциальной компиляции.

Изменение шаблона и его сохранение (заставляя его перекомпилировать) решили проблему, и AppComponent получил значение @Outuput без проблем.

Вид ошибки новобранец в

Спасибо в любом случае!

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