我正在设计一个AngularJS 1.5.x应用程序,每个表单都有很多表单和很多字段。我发现我重复了很多属性,例如:
<div class="form-group">
<label class="control-label" for="thing.Field1">Field 1</label>
<input class="form-control ctrl-md"
type="text"
id="thing.Field1"
name="Field1"
ng-model="thing.Field1"
ng-maxlength="30"
required
uib-tooltip="Field 1 is required"
tooltip-placement="right"
tooltip-trigger="none"
tooltip-is-open="thingForm1.Field1.$invalid && showValidationErr('Thing1')"
ng-blur="fieldBlur('Thing1')">
</div>
我试图使用指令+模板,它或多或少有效,但看起来非常复杂和缓慢。
有没有一种方法可以让input
重复使用?或者我应该习惯在编辑器中进行大量的复制+粘贴?
除了减少重复编码之外,如果我想更改所有字段上的工具提示位置,那么能够在一个地方更改所有元素会更好。
答案 0 :(得分:1)
有很多方法。看看这个图书馆http://angular-formly.com/。在我的项目中,我只在复杂的情况下使用普通输入和编写指令,比如2个字段控件。或卡片有效期等特殊领域。
<强>更新强>
好的,请看看这个。 Angular: better form validation solution
你有3个解决方案:
preset
的属性,并在其中存储属性预设。因此,正如我已经说过的,有很多方法可以减少属性重复次数。