请参考这个小提琴的完整例子:http: //jsfiddle.net/lesouthern/WnvjF/7/
.directive('redirectEnterKey',function() {
return {
restrict : 'A',
controller : function() {}
}
})
.directive('redirectEnterKeyTo', function() {
return {
restrict : 'A',
require : '^redirectEnterKey',
link : function($scope,$element) {
$scope.enterKeyElement = $element;
}
}
})
.directive('redirectEnterKeyFrom', function() {
return {
restrict : 'A',
require : '^redirectEnterKey',
link : function($scope,$element) {
$element.keypress(function($event) {
if($event.keyCode == '13') {
$scope.enterKeyElement.click();
$event.stopPropagation();
$event.preventDefault();
}
});
}
}
});
我想将变量“enterKeyElement”的范围隔离到指令redirectEnterKey、redirectEnterKeyTo 和redirectEnterKeyFrom。
但是,想与“pageCtrl”共享变量“myInput”的范围。
我可以这样做吗?并且不必在这些指令中引用“myInput”?这是最佳做法吗?
谢谢!