2017-07-31 109 views
-5
  • 我是angular2的新手。
  • 我想传递参数给我的功能,对于发烧函数我成功地能够传递参数,因为我只需要传递一个参数。
  • 对于其他功能的帮助我需要传递两个值,当我准备通过时,我得到了下面的错误。
  • 你能告诉我如何解决它。
  • 下面提供代码和错误。tiger-star.ts(1124,35):错误TS2304:找不到名字'f'

    app/components/tigers/tiger-star.ts(1124,35):错误TS2304:找不到名字'f'。 app/components/tigers/tiger-star.ts(1124,37):错误TS2304:找不到名字'g'。

    马克

    $("#sports").unbind().change(function(e){ 
         that.fever(e); 
        }); 
    

这里提供我的html {{okBtn}}

 $("#zoo").unbind().click(function(){ 

      that.help(f,g); 

     }); 
+1

...那么...什么是f和g?目前他们没有定义,只是看提供的代码,这将解释错误。另一方面,“e”被定义。 –

+0

我担心这不是事件绑定的“角色”。 – cyrix

+0

@KevinB你可以在我的代码更新其混淆...提供我的html在这里{{okBtn}}

回答

0

那是因为你从来没有定义fg。你必须在使用它们之前定义它们。例如:

let f = 2, g = 3; 
that.help(f,g); 

BWT与你不需要对上下文保存到that ES-箭功能。他们保留其父类的this上下文。

$('#zoo').unbind().click(event => { this.help(...) }); 

如果你正在使用,请阅读docs有关模板和数据绑定。

例如,如果要将click侦听器绑定到某个元素,请使用“banana”语法。 <element (click)="onClick($event)"></element>并将组件中的列表器定义为public方法。

public onClick(event: MouseEvent) { 
    // <element> clicked, do your stuff here 
} 
+0

你可以在我的代码更新其混乱...提供我的html在这里{{okBtn}}

+0

我不能帮助你,因为你不了解甚至是角度的基础知识。 – cyrix