Angularjs formController有效性检查未定义

Angularjs formController有效性检查未定义,angularjs,validation,Angularjs,Validation,我有一个表格,需要两个验证。$valid和$invalid始终未定义 其中一个验证在自定义指令上。下面是它的实现(来自指令链接函数) 该指令具有用于动态添加文本输入的ng表单。验证程序确实会被调用并返回预期值(在调试器中签入) 就我所知,关于验证(以及自定义指令)的所有其他内容都在工作,但是包含该指令的表单没有设置其有效性 我需要做什么才能正确设置表单值 根据我使用ngForm的经验,我总是在提交时将视图formName.inputName.$valid中的值传递给控制器,以检查我需要什么随机

我有一个表格,需要两个
验证。
$valid
$invalid
始终未定义

其中一个验证在自定义指令上。下面是它的实现(来自指令链接函数)

该指令具有用于动态添加文本输入的ng表单。验证程序确实会被调用并返回预期值(在调试器中签入)

就我所知,关于验证(以及自定义指令)的所有其他内容都在工作,但是包含该指令的表单没有设置其有效性


我需要做什么才能正确设置表单值

根据我使用ngForm的经验,我总是在提交时将视图formName.inputName.$valid中的值传递给控制器,以检查我需要什么随机想法:您是否尝试过重命名您的自定义验证器(以防它以某种方式导致内置所需验证器出现问题)?您的输入标记是否具有
name
属性?@SunilD。是的,我以前给它起过一个不同的名字,但后来“必需”验证的站点范围ng消息没有显示出来。是的,输入名为。@Fals我试图避免在控制器中检查单个字段的有效性,但就目前而言,这就是我使用ngForm的经验,我总是在提交时将视图formName.inputName.$valid中的值传递给控制器,以检查我需要什么随机想法:您是否尝试过重命名您的自定义验证器(以防它以某种方式与内置的必需验证器一起导致问题)?您的输入标记是否具有
name
属性?@SunilD。是的,我以前给它起过一个不同的名字,但后来“必需”验证的站点范围ng消息没有显示出来。是的,输入名为。@Fals我试图避免在我的控制器中检查单个字段的有效性,但目前,这正是我所采用的方法
 scope.modelCtrl.$validators.required = function(modelValue, viewValue) {
     var value = modelValue || [];
     var valid = attrs.required && (value.length || 0) > 0;
     return valid;
 };