我的指令将焦点放在我的跨度上,并在我按下shifttab时分配布尔值,即 focusToSpan 为 true ,但是,此更改不会反映在我的控制器和模板中。我什至用 $scope.$watch 对 focusToSpan 变量进行了检查,如下所示
指示
(function() {
'use strict';
angular.module("my.page").directive('getFocusToSpan', function() {
return {
link: function(scope, elem, attr, ctrl) {
elem.bind("keydown keypress", function(event) {
if (event.which === 16) {
$('.iconclass').attr("tabIndex", -1).focus();
scope.focusToSpan = true;
}
});
}
};
});
})();
控制器
$scope.$watch('focusToSpan', function(newValue) {
if (angular.isDefined(newValue)) {
alert(newValue);
}
});
没有被调用。我是否知道对指令中的控制器变量所做的更改将如何反映在控制器和模板中。谢谢,巴拉吉。