我不熟悉UI开发,并且正在通过示例完全创建一个新的Angular 7 Material应用程序。
我正在处理一个将接受URL作为输入的表单,然后使用URL中的数据(在只读输入字段中)刷新自身。根据我的收集,模板驱动的方法最适合此用例,对吗?我正在使用Material组件,但是找不到任何模板驱动的Material示例,并且我对于何时使用什么标记感到非常困惑。
有人可以提供一些指导/建议,并向我指出可以遵循的教程吗?
注意:我不认为以下引用的帖子解决了我的问题,因为它不包含示例。
答案 0 :(得分:1)
如果您尚未查看过,请尝试一下https://blog.angular-university.io/introduction-to-angular-2-forms-template-driven-vs-model-driven/
我通常使用模板派生形式,并且对它们没有问题,但是有时当您需要更复杂的验证时,使用这种方法可能会有些麻烦。但是我喜欢模板派生形式的原因是,您只需创建对象(模型)并将其提供给 [(ngModel)] ,您就会获得两种漂亮的数据绑定方式。您所要做的只是获取数据并将其反序列化到模型中,就可以在表格中找到数据。 如果您只需要阅读功能,则可以简单地使用标签代替输入并禁用它们。我希望以下示例对您的外观有所帮助。
<form #userForm="ngForm">
<div>
<mat-form-field>
<mat-label *ngIf="someconditionToShow">Name:</mat-label>
<mat-error>Name is required</mat-error>
<input matInput type="text" placeholder="Please enter your name" name="nameInput"
[(ngModel)]="model.Name" [disabled]="conditionToDisable" required>
</mat-form-field>
</div>
<button type="button" disabled="userForm.invalid"></button>
</form>