如何在 angularjs 视图中使用此上下文?

how to use this context in angularjs views?

好吧,我不知道这样的事情是否可能?所以让我们问问就知道了。

<input name="link" ng-model="addItemLink" ng-class="{'input-blink': this.$pristine}" />

一般来说,我们是否能够在 angular 次观看中使用关键字 this?你能不能让我走上一条实现类似目标的道路??

P.S:我已经了解正常的 angular 表单验证以及如何正确访问 $pristine。我想在这里了解 this ?? 呃,我想 $pristine 在表单之外是完全未定义的,不是吗?

do we ever get able to use keyword this in angular views

是的,当然,但是它不经常使用,因为它并不意味着我们习惯认为 this 指向的东西。在 Angular 视图指令中(在属性中)this 指向当前 $scope 对象而不是当前 HTMLElement 对象。

因此,例如,您可以使用 thismyForm form 的名称)修复您的代码:

<input name="link" ng-model="addItemLink" ng-class="{'input-blink': this.myForm.link.$pristine}" />

但在这种情况下,this 是多余的。后面可能会出现需要使用this的情况,比如使用模型的动态名称:

$scope.name = 'user';

并在 HTML 中:

<input ng-model="this[name]">

相当于手动硬编码 user 作为模型 <input ng-model="user">