我需要画一个大表格,不是非常大,大约有400x400个单元格。但React渲染速度太慢了,每次单击单元格时,单元格都应该被更新,这个更新需要同样巨大的时间。有什么建议可以加快速度吗?或者React只是不适合这样的任务?
这里有一个例子(表格大小稍微减小):https://jsfiddle.net/69z2wepo/15731/
这里有一个例子(表格大小稍微减小):https://jsfiddle.net/69z2wepo/15731/
var ROWSC = 400;
var COLSC = 100;
var Hello = React.createClass({
getInitialState: function () {
return {
t: { "1-1": 'c' }
};
},
clicked: function (k) {
var t = this.state.t;
t[k] = t[k] ? 0 : 'c';
this.setState({ t: t });
},
render: function() {
var items = [];
for (var r = 0; r < ROWSC; r++) {
var cols = [];
for (var c = 0; c < COLSC; c++) {
var k = ''+r+'-'+c;
cols.push(<td key={c} onClick={this.clicked.bind(this,k)} className={this.state.t[k]}> </td>);
}
items.push(<tr key={r}>{cols}</tr>);
}
return <table>
{items}
</table>
</div>;
}
});
React.render(<Hello name="World" />, document.getElementById('container'));