mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-05-14 17:53:11 +00:00
fix(ngEventDirectives): parse expression only once during compile phase.
This commit is contained in:
parent
3d6a89e888
commit
9a828738cd
1 changed files with 11 additions and 7 deletions
|
|
@ -41,13 +41,17 @@ forEach(
|
||||||
function(name) {
|
function(name) {
|
||||||
var directiveName = directiveNormalize('ng-' + name);
|
var directiveName = directiveNormalize('ng-' + name);
|
||||||
ngEventDirectives[directiveName] = ['$parse', function($parse) {
|
ngEventDirectives[directiveName] = ['$parse', function($parse) {
|
||||||
return function(scope, element, attr) {
|
return {
|
||||||
var fn = $parse(attr[directiveName]);
|
compile: function($element, attr) {
|
||||||
element.on(lowercase(name), function(event) {
|
var fn = $parse(attr[directiveName]);
|
||||||
scope.$apply(function() {
|
return function(scope, element, attr) {
|
||||||
fn(scope, {$event:event});
|
element.on(lowercase(name), function(event) {
|
||||||
});
|
scope.$apply(function() {
|
||||||
});
|
fn(scope, {$event:event});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue