(reactjs初心者はこちら)...
私はReactjsを使用して、自分が持っているページを作成しています
現在、「searchText」と「data」は私の状態であり、サーバーからデータを受信した後でのみ「結果」を更新する方法を見つけようとしています。
ユーザーが検索テキストとして何かを入力するたびに処理するイベントがあります
handleUserInput: function(searchText) {
this.loadDataFromServer(searchText);
this.setState({
searchText: searchText,
});
},
しかし、上記の関数を使用すると、次のことが起こります
結果はすぐに更新され、検索テキスト(以下のコード)を含む結果のみが表示されますが、同時に、結果に検索テキストが含まれる結果をフェッチするようにサーバーに要求されます。
this.props.products.forEach(function(product){if(product.name.toLowerCase()。indexOf(this.props.searchText)> -1){row = rows.push(row)}} .bind(this ));
約1秒後、サーバーから新しいデータが受信され、結果が再度更新されます。
明らかに私がやりたいのは
これを達成するための適切な方法は何ですか?
それで、あなたが正しく止めたいのはちょうど最初のリフレッシュですか?
結果がサーバーから取得された後ですでに更新されている場合は、手順3でクライアントで結果をフィルター処理するだけではないようです。その場合、最初と同じ仮想DOMが生成されるため、結果はlistは、サーバーが応答したときにのみ実際のDOMを更新します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加