私は大きなテーブルを描く必要があります。実際には大きくはないが、約400x400のセルを描画する必要があります。しかしReactは遅すぎるので、セルをクリックするたびにセルが更新され、このアップデートには同じ時間がかかります。どのようにそれをスピードアップするための任意の提案?あるいは、Reactはそのようなタスクに適したツールではありませんか?React.jsと大きなテーブル
ここは(表のわずかに減少サイズ)の例である:私はコンソールで、あなたの結果を検討している間 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'));
これはO(n^2)、400 * 100はそれほど大きくないが、まだそれがあることがわかります。あなたが50 * 50でそれを減らすと、あなたはすぐにその違いを見るでしょう。このリンクで興味深い速度の比較がありますが、それでも他のものよりも反応が速いです:https://www.codementor.io/reactjs/tutorial/reactjs-vs-angular-js-performance-comparison-knockout –