NG-ZORRO/ng-zorro-antd

[建议] 更好友的模板驱动表单 #320

cipchk posted onGitHub

ng-zorro-antd 文档都是以响应式表单方式构建表单;而好像忽略了模板驱动表单,这倒置了一些 Angular 内置的指令无法发挥作用,例如:

<nz-input [(ngModel)]="btn_save" name="btn_save" [nzPlaceHolder]="'默认:提交'"
    maxlength="10"></nz-input>

maxlength 原来是 Angular 内置的用于校验长度。这些参数还包括:

  • required
  • minlength
  • maxlength
  • pattern

涉及组件

这可能会涉及到数据录入部分的多个组件,以下是我整理。

组件名 required minlenght maxlength pattern 说明
nz-input nz-input 提供了一个指令形式,可以满足。但文档中未加以描述。
nz-datepicker
nz-select
nz-input-number
nz-timepicker

理由

响应式表单固然是最佳选择,然而对于模板驱动表单的优势是相对于减少代码量、只需要维护HTML部分。这对于像企业后台大量表单反而更方便。

并此举我认为没有必要在视觉上做相应的响应,组件校验状态都会在 class 中表述。


@vthinkxie 建议采用以下的接口形式,直接暴露原生表单元素,来避免原生表单元素的接口被屏蔽的问题

<nz-form-container>
  <input nzFormControl type="text">
</nz-form-container>
posted by maroon1 over 7 years ago

@Maroon1 支持这种方式,这和material2的接口方式很像,希望开发组可以参考下material2的部分接口方式,取其精华

posted by jackywang615 over 7 years ago

有什么打算解决这个问题?

posted by vellengs over 7 years ago

@0maxxam0 funded this issue with $15. See it on IssueHunt

posted by IssueHuntBot over 6 years ago

Fund this Issue

$15.00
Funded
Only logged in users can fund an issue

Pull requests

Recent activities

0maxxam0 funded 15.00 for NG-ZORRO/ng-zorro-antd# 320
over 6 years ago