Lun*_*una 11 angularjs angularjs-components
所以我有一个包含表单的模板的组件.
mycomponent.html:
<div>
<form name="myForm">
<!-- more html code -->
</form>
</div>
Run Code Online (Sandbox Code Playgroud)
如何在组件控制器中访问myForm?目前我正在注入$ scope来从中获取它.或者这是获得表格的唯一方法吗?
编辑:添加一些代码,以更好地说明在JavaScript中
angular.module('example')
.component('myComponent', {
templateUrl: 'mycomponent.html',
controller: function($scope) {
$scope.myForm // This works
this.myForm // undefined, can I access it through the component scope instead of $scope somehow?
}
});
Run Code Online (Sandbox Code Playgroud)
Dav*_*ave 23
name
表单的属性是用于决定绑定内容的角度.因此,如果您使用的是controllerAs语法,则必须在表单名称中使用它:
<body ng-controller="MainCtrl as vm">
<form name='vm.myForm'>
</form>
</body>
Run Code Online (Sandbox Code Playgroud)
这将允许您在控制器中引用它而不使用$ scope,但仅在成功创建控制器之后:
app.controller('MainCtrl', function($scope, $timeout) {
var vm = this;
console.log(vm.myForm); // undefined
$timeout(function() {
console.log(vm.myForm); // FormController object
}, 100);
});
Run Code Online (Sandbox Code Playgroud)
这是一个工作的插件.
归档时间: |
|
查看次数: |
11664 次 |
最近记录: |