【发布时间】:2017-10-10 21:46:08
【问题描述】:
我有一个带有 name 属性的表单,我正在尝试使用 angular 的 $scope 变量来访问表单,以及它的 $dirty 布尔值。
问题是我正在使用 TypeScript,如果我将 $scope 变量的类型设置为来自definitelyTyped 的类型文件的接口ng.IScope 或ng.IFormController 之一,我无法输入类似
$scope.myFormINeedToAccess.$dirty
因为一切都是强类型的,如果我这样做了,我会得到错误,
Property 'myFormINeedToAccess' does not exist on type 'IScope'.
或
Property 'myFormINeedToAccess' does not exist on type 'IFormController'.
因为我同时被介绍给 AngularJS 和 TS,所以我没有在 javascript 中编写任何角度,但据我所知,$scope 变量(如果变量是正确的词的话)是全球可访问。因此,在任何级别的封装中,您都可以删除
$scope.(tons of options/stuff in the current view).(a bunch of additional options)
但我感觉很受限制,只能说
$scope.(15ish options defined by ng.IScope or ng.IFormController)
如何使用$scope: ng.IScope 或$scope: ng.IFormController 以使我可以通过语句成功访问$dirty 布尔值,
$scope.myFormINeedToAccess.$dirty
【问题讨论】:
标签: angularjs validation typescript angularjs-scope