gpt4 book ai didi

Angular 2/4 : Reactive forms are synchronous while template-driven forms are asynchronous, 怎么办?

转载 作者:行者123 更新时间:2023-12-02 15:47:31 25 4
gpt4 key购买 nike

我正在浏览 angular.io ( Reactive forms are synchronous ) 的文档,试图理解响应式(Reactive)表单(它们如何同步,模板驱动的表单如何异步)。

但是文档没有提供足够的示例解释。谁能帮助我理解模板驱动表单如何异步而响应式(Reactive)表单如何同步?

我尝试在互联网上浏览很多博客,但没有得到答案。

感谢任何帮助。

最佳答案

在同一文档中仔细阅读这一行:

响应式(Reactive)表单是同步的(当您从代码创建控件时)在响应式(Reactive)表单中,您可以在代码中创建整个表单控件树。您可以立即更新值或向下钻取父窗体的子窗体,因为所有控件始终可用。

模板驱动的表单是异步的(因为它委托(delegate)创建控件的任务)模板驱动的表单将表单控件的创建委托(delegate)给指令。为了避免“检查后更改”错误,这些指令需要多个周期来构建整个控制树。这意味着您必须等待一段时间才能从组件类中操作任何控件。

<小时/>

在模板驱动中,您编写[NgModel]或[NgForm](指令),它将承担在html网页上创建控件的任务,这就是它变得异步的方式。

如果你附加了钩子(Hook)ngAfterViewInit生命周期钩子(Hook),你会很容易发现它们之间的区别,

在响应式表单中,您可以找到在模板驱动中找不到的控制权。

关于 Angular 2/4 : Reactive forms are synchronous while template-driven forms are asynchronous, 怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49665096/

25 4 0