У меня проблема с Angular 6: я создаю серию пользовательских компонентов (которые представляют компонент ввода).Шаблоны компонентов очень просты (они предлагают только некоторые дополнительные функции).Проблема заключается в следующем: каждый компонент связан со значением value
(используется двухстороннее связывание с [(ngModel)]
): это, например, строка, если компонент является текстовым, элемент, выбранный, если компонент является комбинированнымполе и т. д. Если я создаю форму для отправки различных значений компонентов, например:
<form #form="ngForm" (ngSubmit)="onSubmit(form.value)">
<my-component name="name" ngModel>
</my-component>
<input type="submit" value="Submit"/>
</form>
в компоненте, который использует форму, метод onSubmit(value)
будет таким:
onSubmit(value){
console.log(value);
}
, даже если для компонента выбрано значение по умолчанию, при загрузке страницы, если я нажимаю кнопку «Отправить», результатом будет всегда : {name: ""}, даже если он связанс этим компонентом есть значение !!Как только я меняю компонент, взаимодействующий с ним, все работает.Я перепробовал все (обновление значения value
компонента в каждом методе жизненного цикла -Lyfecycle Hooks-; обновление значения внутри компонента, использующего форму и т. Д.), Но я не получаю никаких результатов!Как мне решить эту проблему?