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

А как подписаться на FormGroup в другом компоненте ? Если

импортирую компонет с FormGroup в конструкторе и достаю пишет Error NullInjector компонент с FormGroup

28 ответов

25 просмотров

компоненты не инжектятся, почитайте про DI, пройдите tour of heroes

Alex- Автор вопроса
М
компоненты не инжектятся, почитайте про DI, пройди...

Компоненты не инжектятся в Di контейнер. Понял. А как пробрасывать пропсы только через сервисы ?

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

ну если так, можно через декоратор @ViewChild получить доступ к дочернему компоненту. Но это все же совсем нехорошая практика

Alex- Автор вопроса
М
ну если так, можно через декоратор @ViewChild полу...

Не ну в сервис пихать FormGroup тоже на хрень похоже

Alex
Не ну в сервис пихать FormGroup тоже на хрень похо...

почему? наоборот надо стараться делать компоненты максимально глупыми, вынося логику в сервисы.

Alex- Автор вопроса
М
почему? наоборот надо стараться делать компоненты ...

Ну смотри. Я скажу это ты посоветовал)

Alex
Ну смотри. Я скажу это ты посоветовал)

ахахах, ну, можем подождать мнение более прошаренных коллег, но я не первый год с ангуляром работаю, в своем опыте придерживаюсь такого подхода. + по проектам всегда были большие формы, связанные и переплетённые друг с другом.

М
компоненты не инжектятся, почитайте про DI, пройди...

Компоненты вполне себе инжектятся, но в соответствии с деревом инжекторов. Т.е. родителя в ребенка можно, наоборот - нет

Maxim Afanasev
Компоненты вполне себе инжектятся, но в соответств...

значит был не прав, и про DI пошел читать уже я)

М
значит был не прав, и про DI пошел читать уже я)

Не уверен, что в доке про такое пишут, тут проще попробовать и потом уже в исходники поглядеть по необходимости

Alex- Автор вопроса
М
значит был не прав, и про DI пошел читать уже я)

di контейнер это одна из реализаций принципа Inversion of Control (IOC контейнер). Один раз свой костыльный di напишешь сразу все понятно)

Alex- Автор вопроса
Maxim Afanasev
Компоненты вполне себе инжектятся, но в соответств...

Так что не дурить себе голову с ControlСontainer? Подписать детей на FormControl родителя ?

Alex
Так что не дурить себе голову с ControlСontainer? ...

Зачем? Я не совсем понимаю ваш кейс, но мне кажется CVA решают все подобные проблемы, разве нет?

Alex
screenshot Вот и GPT тоже как я думал))

Родители в детей инжектятся вам верно. Для дериктив удобно

Из родителя покинуть нужную formGroup в дочерний компонент Родитель оркестрируют Дочерний компонент отображает

Alex- Автор вопроса
Evgheni Чернявский
Ты еще скажи через инпут прокинуть

Кстати а почему это плохо? Много где пишут что это худший вариант а cva и cc лучший

Maxim Afanasev
Не уверен, что в доке про такое пишут, тут проще п...

Пишут. И даже вроди не плохо. Только вот почему-то засунули статью фиг знает куда и ещё пометили архивной https://angular.io/guide/dependency-injection-navtree

Юрий Безруков
Из родителя покинуть нужную formGroup в дочерний к...

Плохая практика создавать shared формочки таким образом? Если да, то как лучше?

Evgheni Чернявский
100 раз сказали, либо CVA либо бан, выбирай

А почему И как через cva управлять конкретными контролами?

Дизейблить могу?

Юрий Безруков
Дизейблить могу?

ну да, вы к CVA обращаетесь через формконтрол, т.е все фичи контрола вам доступны

Evgheni Чернявский
ну да, вы к CVA обращаетесь через формконтрол, т.е...

Дизейблить конкретный контрол в форме, которая как cva сделана из родительского компонента могу?

Юрий Безруков
Дизейблить конкретный контрол в форме, которая как...

CVA это всего лишь интерфейс между формконтролом и компонентом/директивой а дизайблить контрол вы можете даже если ваша форме еще даже не темплейте не нарисована

Юрий Безруков
Дизейблить конкретный контрол в форме, которая как...

дизэйблить из родителя, дергать из родителя методы детей. решительно осуждаю

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

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

а через 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
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
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
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта