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

Попытаюсь заново задать вопрос: подскажите, пожалуйста, почему в данном примере с

полем ввода и ngModel, метод setValue не изменяет представление?

https://stackblitz.com/edit/stackblitz-starters-h8klxk?file=src%2Fmain.ts

12 ответов

19 просмотров

https://angular.io/errors/NG0100

Mukhamed- Автор вопроса
Eugene Udalov 🇷🇺
https://angular.io/errors/NG0100

Да, ошибка есть, не заметил. Но она не влияет на поведение: попробовал, оставив ошибку, сделать через [(ngModel)]="name" и значение меняется даже вместе с ошибкой, а вот с setValue() попробовал убрать ошибку вызвав обнаружение изменений, но значение в представлении инпута не поменялось.

там по моему надо standalone настройку ёбнуть чтобы оно трекало изменения от control, а так по дефолту control только для подписки на valueChanges юзается снаружи

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

standalone, если не ошибаюсь, действует только если есть род. форма.

Mukhamed
standalone, если не ошибаюсь, действует только есл...

вывод: придется добавить род.форму если хотите ожидаемое поведение

Mukhamed- Автор вопроса
Evgheni Чернявский
там по моему надо standalone настройку ёбнуть чтоб...

Короче, да, с жизненными циклами что-то не сходится, и я не понимаю что, а так если через кнопочку вызвать метод обновления, то всё работает: https://stackblitz.com/edit/stackblitz-starters-h8klxk?file=src%2Fmain.ts

Mukhamed- Автор вопроса
Mukhamed
Спасибо за наводку.

например если таймаут поставить, то работает

Mukhamed
Короче, да, с жизненными циклами что-то не сходитс...

хммм блин значит оно и так по дефолту standalone, тогда да, CD не тригерилось до этого

Mukhamed- Автор вопроса
Evgheni Чернявский
хммм блин значит оно и так по дефолту standalone, ...

Ага, подефолту игнорируется без род.формы

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

Как оказалось, ngAfterViewInit вызывается также как и ngOnInit один раз за весь жизненный цикл компонента, вот и почему ничего не обновлялось после того как представление уже было отрисовано. Переместил всё в ngAfterViewChecked, который вызывается после каждого обнаружения изменений и вуаля, всё работает.

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

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

а через 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
Карта сайта