问题标签 [angular2-formbuilder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
843 浏览

javascript - Ionic2 - 使用变量设置默认字段值不起作用

我的一个组件中有一个带有日期选择器的表单。该组件的构造函数如下所示。

由于我使用 dob.toString() 设置日期选择器的默认值,我收到以下错误消息。

我在 formBuilder 之前控制台记录了该值,并且日期按预期打印出来。似乎字符串在用于设置 formBuilder 中的默认值之前以某种方式发生了变化。如果我在 formBuilder 中硬编码字符串“1999-12-31”而不是使用变量,它就可以工作。我什至检查以确保“dob === '1999-12-31'”是真的。

为什么硬编码的字符串可以设置默认值,而具有完全相同值的变量却不起作用?

编辑:

这一定是日期选择器的错误。如果我输入“1999-12-31”作为硬编码字符串,它会按预期工作。如果我输入“1997-1-1”或“1997-12-3”,它会失败。它接受一些有效日期,而不是其他日期。

编辑2:

看一下这个:

为什么地球上有这么多字符串无法解析为日期?“1999-12-31”和其他的有什么区别?

0 投票
1 回答
240 浏览

angular - 如何检查表单是否在其控件之一上有必填字段

我有以下表格

有没有办法检查表单是否在其控件之一上有必填字段?

谢谢

0 投票
1 回答
725 浏览

angular - 如何使用Angular2 Formbuilder处理文件上传?

Angular Docs 似乎缺乏适当的文档。Angular2 最终版本还比较年轻,所以互联网上没有太多帮助。

如果有人可以指导我使用Angular 2.1中的 FormBuilder 组件处理文件上传,我将不胜感激

0 投票
0 回答
614 浏览

json - 以角度 2 映射表单值以获取特定对象

当我提交表单并将其转换为字符串时,我目前正在返回一个对象,因为我的服务需要一个字符串值。

但是...当我调用该函数时,它会返回我的表单对象并将其放入“值”对象中,并且我不确定如何仅调用“值”对象中的对象。任何人都可以帮忙吗?

我的提交功能:

我的表格:

它返回什么:

我只想要“价值”对象里面的东西

0 投票
1 回答
1563 浏览

validation - Angular2:如何将两个或多个验证器应用于同一个控件?

我正在使用 Angular2 创建一个表单,并为电子邮件地址字段创建了两个自定义验证器。

第一个验证器检查电子邮件的有效性,第二个(异步)验证器检查电子邮件地址是否已存在于数据库中。此外,我想添加第三个验证器以进行另一次验证。

这是我的代码:

我想要的行为如下:只有当第一个验证器验证控件时,第二个验证器才应该启动。只有当第二个验证者终止时,第三个验证者才能开始其验证。

如何达到这一点?

0 投票
3 回答
11972 浏览

angular - Angular 2 form valueChanges 连续触发

填写位置字段后,我正在尝试使用从服务中获得的值更新表单的值名称。我通过观察表单对象的valueChanges来尝试做到这一点。它可以工作,但它会持续触发,尽管值不再改变。debounceTime ()distinctUntilChanged()没有影响:

html模板

有任何想法吗?谢谢

0 投票
1 回答
772 浏览

validation - Angular2:如何按特定顺序应用自定义验证器?

我创建了一个带有 2 个自定义验证器的 Angular2 表单,并将其传递给FormControl

这是一个 Plunker:https ://plnkr.co/edit/pDMKtdC5PqFttfraOPqf (它基于旧的 Angular2 版本)。

我想达到以下行为:

只有当用户通过requiredandcustomValidator测试时,asyncCustomValidator才能开始(并调用后端)。

如何获得这种行为?

compose另外,使用方法和将两个或多个验证器放在同一个数组中有什么区别吗?

0 投票
3 回答
11154 浏览

angular - 如何设置Angular 2 Reactive Select的初始值

我有一个选择列表,我想将其初始化为从服务器返回的保存值。但无论我尝试什么,我都无法让它使用选定的值。

我正在使用 Angular 2.2.0Reactive Forms

这是选择列表的值列表。

保存的值为:

使用 FormBuilder 我创建了表单

然后我用保存的数据初始化它

模板看起来像这样

预期结果 select 中选择了第一项的名称,并与模板下显示的 JSON 中的文本匹配

实际行为 JSON 显示了这一点:

但是选择中没有选择任何内容

如果选择了 --Select--,则 JSON 会正确更新为“”。

如果选择了另一只猫,JSON 也会正确更新。

我在做什么错,如何初始化选择?

编辑我也试过这个:

0 投票
1 回答
12628 浏览

angular - 验证复选框列表Angular 2

我有一个业务单位列表,这些业务单位在注册表单上呈现为复选框以及一个文本框字段,并且正在进行验证。

业务单位列表从数据库表中检索,并在表单加载时呈现

在构造函数中,我正在验证这样的电子邮件

})

我将如何验证是否选中了在页面加载时动态加载的复选框列表中的至少一个复选框?

谢谢

0 投票
1 回答
335 浏览

angular - Angular 2 - 在订阅中创建表单会导致崩溃,说 formGroup 未定义

我的 Firebase 数据库中有一些数据,这些数据我想通过FormBuilder. 它工作得有些好,但我经常出错而不是说formGroup expects a FormGroup instance. Please pass one in.

没有意义的是,当我对数据库应用导致订阅触发的新更改时,我收到错误消息。尽管this.settingsForm在更新后订阅运行之前和之后设置。

这是订阅:

所以我想知道为什么会发生这种情况,我该如何预防呢?我不能像这样初始化表格吗?