gpt4 book ai didi

javascript - AngularJS - ngFocus 和 ngBlur 错误

转载 作者:行者123 更新时间:2023-11-30 10:17:43 25 4
gpt4 key购买 nike

我尝试为 ngFocus 和 ngBlur 添加代码,但每次我启动它时,它似乎都不起作用,这是我的 js 代码:

function focusCtrl($scope) {
$scope.hasFocus = false;
}
angular.module('app', [])
.directive('ngFocus', ['$parse', function ($parse) {
return function (scope, element, attr) {
var fn = $parse(attr['ngFocus']);
element.on('focus', function (event) {
scope.$apply(function () {
fn(scope, {$event: event});
});
});
};
}])
.directive('ngBlur', ['$parse', function($parse) {
return function(scope, element, attr) {
var fn = $parse(attr['ngBlur']);
element.on('blur', function(event) {
scope.$apply(function() {
fn(scope, {$event:event});
});
});
};
}]);

我也会添加我的 html:

<div class="col-lg-10">
<input ng-blur="hasFocus=false" ng-focus="hasFocus=true" type="text" required="required" class="form-control form-validation" id="name" placeholder="Name" ng-model="artist.name" />
</div>

每次我重新加载页面时都会出现这个错误,我似乎无法理解这个问题!

Uncaught TypeError: Object #<Object> has no method 'module' Focus.js:4
(anonymous function)

感谢您的帮助!

最佳答案

那些指令带有 Angular (不确定它们是在哪个版本中引入的

ngFocus

ngBlur

也就是说,当你创建指令时,不要在它们前面加上 ng。该前缀由 angular 保留。

“不要在您自己的指令前加上 ng 前缀,否则它们可能会与 Angular future 版本中包含的指令冲突” reference

如果您想要通过 Controller 作用域上的字段将焦点设置到控件的功能,请查看此 question .

关于javascript - AngularJS - ngFocus 和 ngBlur 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22992079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com