为什么ListView单击处理程序在启动时执行函数

时间:2016-03-03 10:17:42

标签: javascript react-native

所以我使用react-native,似乎当我的应用程序启动时,它实际上运行附加到点击处理程序的功能?这应该发生吗? 或者这是一个错误??

我有:

ComboBox

然后在我的功能中:

<TouchableHighlight onPress={() =>this._pressData(rowID)}></TouchableHighlight>

当我启动我的应用程序时,我只得到一个数字高达1000的控制台日志。如果我在那里放了更多的逻辑,它想要全部执行它。

例如,如果我把它放在那里,

this._pressData(theRow) { console.log(theRow); }

应用程序启动需要很长时间,因为它实际上运行了setState一千次,并且控制台记录了这一点。

如何让这些功能仅在onPress上运行。而不是在启动? (或者这是一个错误?)

(找出这个问题,在问题上回答我Previous Question 。问题问题显然是由同一问题引起的。)

有什么想法吗?

我开始认为我的构建很糟糕。也许是时候降级了lol

1 个答案:

答案 0 :(得分:0)

尝试使用ES6胖箭头更改您的代码:

select * from "ext_transform";

然后以这种方式声明你的功能

<TouchableHighlight onPress={() => this._pressData(rowID)}></TouchableHighlight>