169 похожих чатов

Подскажите, пожалуйста, что такое хост в ангуляре на самом деле

такое и почему при использовании декораторов @HostListener()/@HostBinding() в случае директивы события будут навешаны на элемент, на который была применена директива, а в случае с компонентом события будут навешаны на сам компонент, что и логично.

Однако меня смущает поведение декоратора @Host() при разрешении зависимостей из DI, почему для этого случая хостом будет тот родительский шаблон, внутри которого объявлена директива на элементе или объявлен сам компонент?

Ощущение, что хост это что-то не однозначное и зависит от случая, так ли это?

14 ответов

22 просмотра

хост это элемент дом, на котором висит директива. и компонент это тоже директива

xxtux Shvets
хост это элемент дом, на котором висит директива. ...

Хост не обязательно является дом элементом

Mukhamed- Автор вопроса
xxtux Shvets
хост это элемент дом, на котором висит директива. ...

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

Mukhamed
я в курсе, что компонент тоже директива, разница л...

нет, компонент мы тоже вешаем на элемент

Ilya Chursin
Хост не обязательно является дом элементом

а на что еще можно повесить байндинг и листенер?

Mukhamed- Автор вопроса
xxtux Shvets
нет, компонент мы тоже вешаем на элемент

Имеется в виду, что селектор компонента под капотом условный "div"?

Mukhamed
Имеется в виду, что селектор компонента под капото...

нет такой вещи, селектор компонента. Есть просто селектор. Компонент можно повесить и на [attrname], на селектор с аттрибутом

Mukhamed- Автор вопроса
xxtux Shvets
нет такой вещи, селектор компонента. Есть просто с...

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

Mukhamed- Автор вопроса

Я имею в виду, что в разных местах ангуляр использует термин Host... будь то биндинг, листинер или хост в разрешении зависимостей DI, и вопрос в том, понимается ли под хостом что-то конкретное или это просто наименования, которые между собой ничего общего не имеют?

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

host — двольно распространенное слово как сервис или элемент

Mukhamed- Автор вопроса

род. компонент или же шаблон род. компонента с его viewProviders?

Mukhamed- Автор вопроса

ну, если данные будут в providers: [] род компонента, то @Host() не достанет их https://stackblitz.com/edit/stackblitz-starters-8epuvb?file=src%2Fdirectives%2Fhost.directive.ts

Mukhamed
ну, если данные будут в providers: [] род компонен...

https://angular.io/guide/hierarchical-dependency-injection тут демка хорошая

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

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта