TypeError:V不是AngularJS中的函数

时间:2017-02-17 22:38:19

标签: angularjs

如果你得到:

  

TypeError:V不是函数

在控制台中你应该找哪些错误?
我只是一名学生,我不知道如何修复我的网页。我正在做一个在线课程,并按照我老师的指示。 该项目已经很大了,有很多文件。我真的不知道为了获得一些帮助,我必须展示项目的哪个部分。在开始使用 Angular $resource之前,一切正常 这个错误是否至少表明项目的哪个部分是错误的? 从那里开始,我可以提供更详细的信息。

2 个答案:

答案 0 :(得分:3)

错误地调用角度默认方法时会发生此错误,例如在尝试使用验证器时出现相同的错误

totalInvestmentAmt:[null,[Validators.required,CustomValidators.floatNumber,Validators.min(1)]]

修正

totalInvestmentAmt:[null,[Validators.required,Validators.pattern(CustomValidators.floatNumber),Validators.min(1)]]

在验证中,没有任何带有角度的CustomValidators.floatNumber的方法

答案 1 :(得分:0)

Ar123 说得对,但他没有很好地解释。 如果您在验证方面遇到问题,那么您可能会将 ValidatorOrOpts 与 ValidatorFn 混淆。

ValidatorOrOpts 是 FormControl 的第二个参数,它是一个可选对象,具有键 'validator' 和类型 ValidatorFn 的值。

如果您使用的是 formBuilder 之类的东西,那么您只需要数组中的 ValidatorFn。这只是一个接受控制并输出错误的函数。

'v is not a function' 因为 angular forms 循环遍历 ValidatorFn 列表并将它们作为函数运行。但你可能没有给它一个功能。