@@ -83,14 +83,9 @@ export class CompileEventListener {
8383
8484 listenToRenderer ( ) {
8585 var listenExpr ;
86- var eventListener = o . THIS_EXPR . callMethod ( 'eventHandler' , [
87- o . fn ( [ this . _eventParam ] ,
88- [
89- new o . ReturnStatement (
90- o . THIS_EXPR . callMethod ( this . _methodName , [ EventHandlerVars . event ] ) )
91- ] ,
92- o . BOOL_TYPE )
93- ] ) ;
86+ var eventListener = o . THIS_EXPR . callMethod (
87+ 'eventHandler' ,
88+ [ o . THIS_EXPR . prop ( this . _methodName ) . callMethod ( o . BuiltinMethod . bind , [ o . THIS_EXPR ] ) ] ) ;
9489 if ( isPresent ( this . eventTarget ) ) {
9590 listenExpr = ViewProperties . renderer . callMethod (
9691 'listenGlobal' , [ o . literal ( this . eventTarget ) , o . literal ( this . eventName ) , eventListener ] ) ;
@@ -107,10 +102,9 @@ export class CompileEventListener {
107102 listenToDirective ( directiveInstance : o . Expression , observablePropName : string ) {
108103 var subscription = o . variable ( `subscription_${ this . compileElement . view . subscriptions . length } ` ) ;
109104 this . compileElement . view . subscriptions . push ( subscription ) ;
110- var eventListener = o . THIS_EXPR . callMethod ( 'eventHandler' , [
111- o . fn ( [ this . _eventParam ] ,
112- [ o . THIS_EXPR . callMethod ( this . _methodName , [ EventHandlerVars . event ] ) . toStmt ( ) ] )
113- ] ) ;
105+ var eventListener = o . THIS_EXPR . callMethod (
106+ 'eventHandler' ,
107+ [ o . THIS_EXPR . prop ( this . _methodName ) . callMethod ( o . BuiltinMethod . bind , [ o . THIS_EXPR ] ) ] ) ;
114108 this . compileElement . view . createMethod . addStmt (
115109 subscription . set ( directiveInstance . prop ( observablePropName )
116110 . callMethod ( o . BuiltinMethod . SubscribeObservable , [ eventListener ] ) )
0 commit comments