哪个@angular/*包是bug的来源?
forms
这是个回归吗?
否
描述
- 内置验证器,如
required
仍然与FormsModule
一起导入 ngModel
类型和相应自定义值访问器的类型没有被检查,实际上[ngModel]
具有any
类型,没有类型检查,你可以将任何类型的任何属性传递给[ngModel]
(例如Date
而不是string
),编译器会很高兴。- 控件值访问器无法访问其有效性状态,组件只能依赖于像
ng-valid
这样的css类,但在你想显示一个下拉列表的情况下,它不会继承这些类,因为它是在组件外部渲染的 - 没有方法可以禁用内置的css类,如
ng-valid
- 验证错误仍然不会传播到父表单
[ngModel]
仍然比其他任何输入属性延迟一拍写操作
请提供一个最小复现bug的链接
- 无响应*
请提供您看到的异常或错误
- 无响应*
请提供您发现此bug的环境(运行ng version
)
- 无响应*
还有其他要说的吗?
- 无响应*
5条答案
按热度按时间pepwfjgg1#
这个功能请求现在已经成为我们的待办事项候选!在接下来的阶段,社区有60天的时间进行投票。如果请求获得超过20票的赞成,我们将把它移到我们的考虑列表中。
你可以在我们的文档中找到更多关于功能请求流程的详细信息。
hk8txs482#
请注意,我们已经开始了针对您的功能请求的社区投票过程。距离投票过程结束还有20天。
有关Angular功能请求流程的更多详细信息,请参阅我们的文档。
368yc8dk3#
感谢您提交您的功能请求!看起来在投票过程中,它没有收集到足够的票数进入下一阶段。
我们希望保持Angular丰富且符合人体工程学,同时关注其范围和学习过程。如果您认为您的请求可能超出了Angular的范围,我们鼓励您与community合作,将其发布为开源项目package。
您可以在我们的文档中找到有关功能请求过程的更多详细信息。
nle07wnf4#
你好,你能给我们提供一些更多的信息,看看我们是否可以解决一些问题吗?
ivqmmu1c5#
@JeanMeche,
一些验证器指令总是被导入,例如
required
。如果我想要使用我自定义的required
验证器,我必须选择一个不同的名称(不好),或者有两个验证器匹配相同的属性(也不好)。我的问题是关于模板驱动表单,根本没有类型检查。如果你在任何大型应用程序中为所有自定义访问器添加类型化的
ngModel
/ngModelChange
,你将得到大量的错误。一个例子就是任何具有下拉/弹出菜单的表单控件,例如通过cdk覆盖显示的自动完成,它不会继承任何有效性样式/类。
这是3的结果,如果我们有任何API来获取有效性,那么我们就不需要内置的类。
是的,你不能有这个非常基本的东西,而且将错误传播到自定义值访问器也是有意义的,例如为了能够显示错误提示。
NgModel defers writeValue call to the next tick. Conflicts with OnInit's contract of child components. #13568有一个示例