私はReactでWebアプリケーションを開発しており、状態を変更するために画面サイズがモバイルブレークポイントに入ったときを検出する必要があります。具体的には、ユーザーがモバイルモードに入ったときにsidenavを折りたたむ必要があり、コンポーネント内の状態に格納されているブール値で制御されます。Reactで画面サイズがモバイルに変更されたかどうかを検出する方法は?
3
A
答えて
5
コンポーネントが実装した後、私は何をしてイベントリスナーを追加します
componentDidMount() {
window.addEventListener("resize", this.resize.bind(this));
this.resize();
}
resize() {
this.setState({hideNav: window.innerWidth <= 760});
}
2
ちょっと私はちょうどこの問題のNPMパッケージを発表しました。 https://www.npmjs.com/package/react-getscreen
import React, { Component } from 'react';
import {withGetScreen} from 'react-getscreen'
class Test extends Component {
render() {
if (this.props.isMobile()) return <div>Mobile</div>;
if (this.props.isTablet()) return <div>Tablet</div>;
return <div>Desktop</div>;
}
}
export default withGetScreen(Test);
//or you may set your own breakpoints by providing an options object
const options = {mobileLimit: 500, tabletLimit: 800}
export default withGetScreen(Test, options);
関連する問題
- 1. 画面がタッチされたかどうかを検出する
- 2. Androidで画面の明るさが変わったかどうかを検出する方法は?
- 3. フレックス - オブジェクトデータが変更されたかどうかを検出する方法?
- 4. XCode UIテストで画面が変更されたことをどのように検出できますか?
- 5. コンテンツに合わせてモバイル画面のサイズを変更する方法
- 6. モバイル画面でdojoxグラフのサイズを変更する
- 7. CSSのモバイル画面でのみ検出する方法
- 8. 画像のレイアウトが1つの画面サイズから別の画面サイズに変更されました
- 9. サイズ変更された画面で在庫キャンバススロットを拡大する方法
- 10. NSDrawerが画面から開くかどうかを検出する方法
- 11. 画像がタッチされたかどうかを検出する方法
- 12. 角2:画面のサイズ変更を検出するカスタムディレクティブ
- 13. 円を拡大してモバイル画面のサイズを変更する
- 14. 画面のサイズがangualrjsで変更されたときの通知方法
- 15. 画面のサイズが小さい画面に合わせてボタンのサイズを自動的に変更するにはどうすればよいですか?
- 16. 画面キャプチャを検出する方法がキャンセルされましたか?
- 17. 画面サイズに応じてボタンのサイズを変更するにはどうすればよいですか?
- 18. 私はfontSizeをどのように変更するのですか?画面のサイズが変わったら?
- 19. さまざまな画面サイズでタブイベントを変更するにはどうすればよいですか?
- 20. プロパティが角2で変更されたかどうかを検出する方法は?
- 21. ファイルシステムを同期すると、ファイルが変更されたかどうかを検出する方法は?
- 22. ヘッダーイメージを画面サイズの変更に対応させるにはどうすればよいですか?
- 23. ACEエディタ:どのブロックが変更されたかを検出する方法
- 24. モバイル/ iPhoneで背景画像のサイズが変更されない
- 25. 画面サイズが変更されたときにテーブルを変換する
- 26. ディクショナリに含まれる値が変更されたかどうかの検出
- 27. QWebViewでマウスボタンが押されたかどうかを検出する方法は?
- 28. スケールメテオからモバイルへの画面サイズ
- 29. デバイスのiCloudアカウントが変更されたかどうかを検出する方法は?
- 30. TextViewのテキストが変更されたかどうかを検出する最良の方法は?
を、それをチェックアウト あなたはデバウンスまたはそのイベントリスナーを絞ることになるでしょう。 [here](https://remysharp.com/2010/07/21/throttling-function-calls)の両方の例があります。 – ivarni