this.model angular 中的内部指令
this.model inside directives in angular
我对如何使用 this.model
查询 Angular 中的控制器模型有疑问
如果我有下一个控制器:
angular
.module("myApp", [])
.controller('myCtrl', myCtrl)
.directive('myDirective', myDirective);
function myCtrl(){
var vm = this;
//model
vm.myModel = "whatever";
}
//my directive
function myDirective(){
return {
restrict: 'A',
link: function(scope, element, attrs) {
// here!
// how can I acces to the myModel model if it was defined with 'this'
}
}
}
如果我的模型是这样的:
$scope.myModel
我可以在 myDirective 中使用 scope.myModel 读取它,但是使用 "this (vm.myModel)" 我该如何实现呢?
它作为范围参数传入。
scope.myModel
在 vm
语法的情况下,它成为作用域参数的另一层。例如:
scope.vm.myModel
您可以使用
获取指令的任何父控制器
angular.element.parent().controller();
这是一个有效的 fiddle。
http://jsfiddle.net/HB7LU/22226/
使用此代码,如果我将控制器中的 vm 更改为其他内容,则无需更改指令的代码。
我对如何使用 this.model
查询 Angular 中的控制器模型有疑问如果我有下一个控制器:
angular
.module("myApp", [])
.controller('myCtrl', myCtrl)
.directive('myDirective', myDirective);
function myCtrl(){
var vm = this;
//model
vm.myModel = "whatever";
}
//my directive
function myDirective(){
return {
restrict: 'A',
link: function(scope, element, attrs) {
// here!
// how can I acces to the myModel model if it was defined with 'this'
}
}
}
如果我的模型是这样的:
$scope.myModel
我可以在 myDirective 中使用 scope.myModel 读取它,但是使用 "this (vm.myModel)" 我该如何实现呢?
它作为范围参数传入。
scope.myModel
在 vm
语法的情况下,它成为作用域参数的另一层。例如:
scope.vm.myModel
您可以使用
获取指令的任何父控制器angular.element.parent().controller();
这是一个有效的 fiddle。
http://jsfiddle.net/HB7LU/22226/
使用此代码,如果我将控制器中的 vm 更改为其他内容,则无需更改指令的代码。