angular -Which form type选择Model-Driven或Template Driven表单?

Rah*_*ank 5 model-driven-development angular

当我使用模型驱动的形式,如:

@Component({
  selector: 'my-app',
  template: `
  <p>
    <label>First Name:</label>
    <input type="text"  [ngModel]="user.firstName" required>
  </p>
  `,
  providers: [myService]
})
Run Code Online (Sandbox Code Playgroud)

当我使用模板驱动形式时,如:

 @Component({
      selector: 'my-app',
      template: `
      <p>
         <label>First Name:</label>
         <input type="text" formControlName="firstName">
      </p>
      `,
      providers: [myService]
    })
Run Code Online (Sandbox Code Playgroud)

我认为上面两件事都有相同的功能.所以,在开始新项目的时候,我觉得哪个更好?

Rah*_*ngh 1

我认为以上两件事都具有相同的功能。所以,在开始新项目时,我不太困惑哪一个更可取?

我猜你到目前为止还没有完全探索这些形式。目前,对于 Angular 中的模板驱动表单来说,有些事情是困难的,甚至是不可能的。

诸如表单数组动态添加和删除控件之类的事情。列出每个控件并执行操作,这在反应式表单中更加实用和简单。我觉得未来 Angular 团队将完全切换到响应式形式,这是一个可行的方法。

我这么说的一些原因是 - 这个PR支持模板驱动表单中的 NgModelArray

有关反应式表单模板驱动表单的更多信息。

现在您可以选择您喜欢的方式。