加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

forms – Angular2 – 手动设置FormBuilder控件的值

发布时间:2020-12-17 08:37:28 所属栏目:安全 来源:网络整理
导读:这是驱动我坚果,我在枪下,不能再花一整天在这。 我试图在组件中手动设置控制值(‘dept’),它只是不工作 – 即使新的值日志控制台正确。 这里是FormBuilder实例: initForm() { this.form = this.fb.group({ 'name': ['',Validators.required],'dept': [''
这是驱动我坚果,我在枪下,不能再花一整天在这。

我试图在组件中手动设置控制值(‘dept’),它只是不工作 – 即使新的值日志控制台正确。

这里是FormBuilder实例:

initForm() {
  this.form = this.fb.group({
    'name': ['',Validators.required],'dept': ['','description': ['',});
}

这是接收所选部门的事件处理程序:

deptSelected(selected: { id: string; text: string }) {
  console.log(selected) // Shows proper selection!

  // This is how I am trying to set the value
  this.form.controls['dept'].value = selected.id;
}

现在当表单提交,我注销this.form字段仍然是空白!我看过其他ppl使用updateValue(),但这是beta.1,我不认为这是一个有效的方法来调用控件。

我也试图调用updateValueAndValidity()没有成功:(。

我只是在表单元素上使用ngControl =“dept”,就像我在做其余的形式,但它的自定义指令/组件。

<ng-select
  [data]="dept"
  [multiple]="false"
  [items]="depts"
  (selected)="deptSelected($event)" <!-- This is how the value gets to me -->
  [placeholder]="'No Dept Selected'"></ng-select>
现在我们被迫做一个类型转换:
(<Control>this.form.controls['dept']).updateValue(selected.id)

不是很优雅我同意。希望这在未来的版本得到改进。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读