Reduxに格納する要素をいくつか調べて、要素に集中できるようにする必要があります。なぜrefsを使ってReactアプリケーションの速度を落としていますか?
<BasicSelect
selectRef={(e) => this.storeRef('make', e) } ... />
そして、ここではstoreRefです:私はこのドロップダウン持っ
このことから
storeRef(list, ref)
{
if(this.state.refsStored[list]) {
return;
} else {
this.props.storeSelectRef(list, ref);
var refState = Object.assign({}, this.state.refsStored);
refState[list] = true;
this.setState({refsStored: refState});
}
}
を、それは、一度参照を格納し、その後、単純に比較した後、返す必要があります。
ただし、<BasicSelect>
のドロップダウンのオプションをクリックするたびに、アプリケーションは< 1s(目立つ)のためにハングアップし、次に続行します。
storeRef(list, ref) {
return;
}
ドロップダウン選択は超高速であり、すべてが良いです:私は次のようにstoreRefを変更した場合は
(明らかに意図した結果では動作しません)。では、どうしてこの比較はif(this.state.refsStored[list])
がかなり遅いのですか?
'this.props.storeSelectRef'とは何ですか? –
コンソールにエラーがありますか?秒間の吊り上げは、無限の再帰のようなものが非常に間違っていることを意味します。 –
なぜあなたは状態ツリーにrefを格納する必要性を感じますか?理想的には不変のデータしかそこに置くべきではありません。dom参照はすべて不変です。コンポーネントのインスタンスの参照をより効率的に保つことができます –