Angular 角度2表格-在子组件级别分配控制
以角度2的形式, 试图通过ngSubmit获取数据。 我可以在表单组件中毫无问题地分配ngModel和ngControl属性,但是在子组件MyInput中,如果没有“无提供程序错误”,我无法分配ngControl。 这里是普朗克Angular 角度2表格-在子组件级别分配控制,angular,angular2-forms,Angular,Angular2 Forms,以角度2的形式, 试图通过ngSubmit获取数据。 我可以在表单组件中毫无问题地分配ngModel和ngControl属性,但是在子组件MyInput中,如果没有“无提供程序错误”,我无法分配ngControl。 这里是普朗克 是否需要将表单中的某些内容传递给子组件?在ngControl绑定/执行时道具不可用不是问题吗。。。如果您在组件中提供了一个默认控件,然后从ngOnChange中的props引用该控件,该控件将在props真正可用时执行。使用此方法更新:,父表单无法根据子组件的有效性立即
是否需要将表单中的某些内容传递给子组件?在ngControl绑定/执行时道具不可用不是问题吗。。。如果您在组件中提供了一个默认控件,然后从
ngOnChange
中的props
引用该控件,该控件将在props真正可用时执行。使用此方法更新:,父表单无法根据子组件的有效性立即确定其有效性
作为一种解决方法,您可以尝试将子组件包装到其自己的表单元素中
@Component({
selector: 'my-input',
directives: [FORM_DIRECTIVES],
template: `
<form> <--------------
<input type='text'
[(ngModel)]="props.Value"
[ngControl]="props.id" />
</form>
@组件({
选择器:“我的输入”,
指令:[形式指令],
模板:`
你找到解决方法了吗?我正试图做完全相同的事情!它可能是一个bug[ngControl]=“props?.id”
应该分配null
,直到props
得到一个值。Angular 2表达式解析器支持elvis
操作符吗?是的,它是。在双向速记语法中不起作用[(xxx)]=“yyy?.zzz”
。可能很明显,但可以肯定的是……这是一个非常有用的功能,我不知道,谢谢:)
@Component({
selector: 'my-input',
directives: [FORM_DIRECTIVES],
template: `
<input type='text'
[(ngModel)]="props.Value"
[ngControl]="props.id"
@Component({
selector: 'my-input',
directives: [FORM_DIRECTIVES],
template: `
<form> <--------------
<input type='text'
[(ngModel)]="props.Value"
[ngControl]="props.id" />
</form>