如何在component.ts,angular2中将数据从一个函数传递到另一个函数

时间:2017-03-16 06:38:07

标签: javascript angularjs angular variables components

我在按钮上传递一些值点击“data.someid”我想在另一个按钮中点击“data.someid”

html
---
<button (click)="click1(data.someid)"></button>
<button (click)="click2()"></button>

component.ts

click1(data){
   this.value = data
}
click2(){
  console.log(this.value)
}

现在我将检索到的数据存储到“click1”上的this.value,我想在另一个按钮点击中访问它,但console.log(this.value)显示undefined

请有人告诉我如何访问它。

2 个答案:

答案 0 :(得分:0)

您应该将type="button"添加到按钮元素

<button type="button (click)="click1(data.someid)"></button>

否则表单中的按钮默认为type=submit,就像您提交表单一样。这就是this引用click范围内其他内容的原因。

答案 1 :(得分:0)

您是否已将变量声明为类中的局部变量?并确保在第二个按钮之前单击了第一个按钮。

export class SomeClass {
  value: any;

  click1(data){
    this.value = data
  }
  click2(){
    console.log(this.value)
  }
}