Javascript AngularJS自定义指令和ctrl,在以下情况下引发错误:ctrl的方法与ctrl的名称相同
我对AngularJS还是新手,所以我必须解决一个问题: 我制定了一个自定义提交指令,仅当表单有效时才提交表单。 它可以这样使用:Javascript AngularJS自定义指令和ctrl,在以下情况下引发错误:ctrl的方法与ctrl的名称相同,javascript,angularjs,Javascript,Angularjs,我对AngularJS还是新手,所以我必须解决一个问题: 我制定了一个自定义提交指令,仅当表单有效时才提交表单。 它可以这样使用: 一切正常,直到我尝试了一个RegisterCtrl,其中包含register方法;提交时,指令抛出以下错误: TypeError:对象不是函数 在ajax.googleapis.com/ajax/libs/angularjs/1.2.0-rc.3/angular.js:9068:15 如果方法名为register2或其他名称,则一切正常 这是一个示例和源代码。因为
一切正常,直到我尝试了一个RegisterCtrl
,其中包含register
方法;提交时,指令抛出以下错误:
TypeError:对象不是函数
在ajax.googleapis.com/ajax/libs/angularjs/1.2.0-rc.3/angular.js:9068:15
如果方法名为register2
或其他名称,则一切正常
这是一个示例和源代码。因为您的表单名是
register
,它将FormController绑定到父作用域上的register
属性。如果在指令中console.log(scope.register)
,您将在那里看到FormController。如果不创建任何独立的作用域,则需要将提交函数定义为不同的函数,或者更改表单名称以防止此冲突 10x@eddiec似乎我需要了解更多关于隔离范围的信息