Angularjs 使用controllerAs语法进行角度形式验证

Angularjs 使用controllerAs语法进行角度形式验证,angularjs,angularjs-controller,angularjs-controlleras,angularjs-forms,Angularjs,Angularjs Controller,Angularjs Controlleras,Angularjs Forms,我目前面临以下问题: 我想使用AngularngModel指令验证我的表单输入 当与$scope一起使用时,它们工作良好。 现在,使用controllerAs语法,它们无法工作 这个问题没有很好的文档记录,我能找到的唯一帮助是 下面是我的代码的一个小示例: 使用myController作为vm调用模板 第一件事-您不需要表单上的vm. <form novalidate name="someForm"> <label> Some Text:

我目前面临以下问题:

我想使用Angular
ngModel
指令验证我的表单输入

当与$scope一起使用时,它们工作良好。
现在,使用controllerAs语法,它们无法工作

这个问题没有很好的文档记录,我能找到的唯一帮助是

下面是我的代码的一个小示例:

使用myController作为vm调用模板


第一件事-您不需要表单上的
vm.

<form novalidate name="someForm">
    <label>
        Some Text:
        <span class="danger-text" ng-if="someForm.someText.$invalid">
           ERROR!
        </span>
    </label>
    <input type="text" name="someField" />
</form>

一些文本:
错误
它最终的工作方式是,存在一个与范围无关的验证对象。
controllerAs
语法只是将控制器的一个实例作为范围变量派生出来


尝试从表单和子元素的名称中删除
vm。
,您应该可以。

首先要做的事情-您不需要表单上的
vm。

<form novalidate name="someForm">
    <label>
        Some Text:
        <span class="danger-text" ng-if="someForm.someText.$invalid">
           ERROR!
        </span>
    </label>
    <input type="text" name="someField" />
</form>

一些文本:
错误
它最终的工作方式是,存在一个与范围无关的验证对象。
controllerAs
语法只是将控制器的一个实例作为范围变量派生出来


尝试从表单和子元素的名称中删除
vm。
,您应该可以。

submitted是在controller中定义的?不是,我应该如何定义它?这是scope变量附带的属性之一吗?submitted是在controller中定义的?不是,我应该如何定义它?这是scope变量附带的属性之一吗?
<form novalidate name="someForm">
    <label>
        Some Text:
        <span class="danger-text" ng-if="someForm.someText.$invalid">
           ERROR!
        </span>
    </label>
    <input type="text" name="someField" />
</form>