Angularjs 输入字段中唯一值的自定义验证

Angularjs 输入字段中唯一值的自定义验证,angularjs,angularjs-validation,Angularjs,Angularjs Validation,我必须将AngularJS 1.7用于一个项目,在这个项目中,我有一个表单,必须验证一个需要的输入字段,要有一个特定的模式,并且要有唯一的值。为此,我正在这样做: input#item-name( name="name", type="text", required, ng-pattern="$ctrl.pattern.id", ng-model="$ctrl.item.name", ) div(ng-messages="addItemFor

我必须将AngularJS 1.7用于一个项目,在这个项目中,我有一个表单,必须验证一个需要的输入字段,要有一个特定的模式,并且要有唯一的值。为此,我正在这样做:

  input#item-name(
    name="name",
    type="text",
    required,
    ng-pattern="$ctrl.pattern.id",
    ng-model="$ctrl.item.name",
  )

  div(ng-messages="addItemForm.name.$error")
    div(ng-messages-include="error-messages")
我已经涵盖了所需的和模式一。但不能包含唯一的验证

我有一个包含所有现有值的数组:

this.existingItems = ['A','B','C];
我尝试过类似的方法,但没有成功:

 input#item-name(
    name="name",
    type="text",
    required,
    ng-pattern="$ctrl.pattern.id",
    ng-model="$ctrl.item.name",
    ng-unique="$ctrl.existingItems",
  )

  div(ng-messages="addItemForm.name.$error")
    div(ng-messages-include="error-messages")

我在组件中使用了这部分代码,并将“this”指向“$ctrl”。

ng的文档在哪里是唯一的?它说什么?我没有找到任何关于ng unique的文档。我试过了,就像我想的那样。我在某处发现使用了“确保唯一值”,但也没有找到任何相关文档。是的,我就是这么想的。这不是一种好的编程方式。相反,您应该阅读文档。找出这样一个东西不存在,但是可以定义您自己的验证器,从文档中学习如何做,并尝试一下。您可以通过不阅读文档并尝试随机操作来实现同样的目标,直到您碰巧完成了文档中所说的您应该做的事情,但这将需要更长的时间。