【发布时间】:2016-12-27 04:24:18
【问题描述】:
我正在使用 React。这是我的代码:
var rows = [];
for(var i = 1; i <= this.state.numberOfPages; i++) {
rows.push(<li key={i.toString()} onClick={() => this.getResults(i)}><a href="#">{i}</a></li>)
};
getResults()函数很简单:
getResults: function(page = this.state.currentPage) {
console.log(page);
},
this.state.numberOfPages 等于 3。问题是,当我单击 <li> 标签时,控制台中始终显示 4。但是<li> 值在 HTML 中正确显示。我不明白为什么在通过参数传递时总是评估最后一个 i 值。
细节:
在 React Console 中,key 属性也是正确的。问题是with the parameter only。
在此先感谢,对我的英语感到抱歉。
【问题讨论】:
-
你意识到你的循环可能已经执行了吗?
-
@AndyRay 我试过了,可惜没用
标签: javascript reactjs