Tạo một component ResizeWindow trong ReactJS
Trong bài tập này, mình sẽ tạo một component ResizeWindow để theo dõi sự kiện thay đổi kích thước cửa sổ và hiển thị thông tin chiều rộng và chiều cao mới trong console.
Resize Window trong ReactJS
Trong bài tập này, mình sẽ thực hành xử lý sự kiện thay đổi kích thước cửa sổ, một nhiệm vụ thú vị và hữu ích trong việc tối ưu hóa trải nghiệm người dùng. Hãy cùng nhau tạo component ResizeWindow
và tìm hiểu cách ReactJS làm việc với sự kiện thay đổi kích thước cửa sổ.
Bắt đầu với Thư mục components
Trước tiên, hãy tạo một thư mục components trong thư mục src của dự án ReactJS của bạn.
Tiếp theo, tạo file ResizeWindow.js
// src/components/ResizeWindow.js import React, { useState, useEffect } from 'react'; import './ResizeWindow.css'; const ResizeWindow = () => { const [windowSize, setWindowSize] = useState({ width: window.innerWidth, height: window.innerHeight, }); const handleResize = () => { setWindowSize({ width: window.innerWidth, height: window.innerHeight, }); }; useEffect(() => { // Thêm sự kiện lắng nghe khi component được mount window.addEventListener('resize', handleResize); // Cleanup: loại bỏ sự kiện lắng nghe khi component bị unmount return () => { window.removeEventListener('resize', handleResize); }; }, []); // useEffect sẽ chỉ chạy một lần khi component được mount return ( <div className="resize-window"> <p>Window Width: {windowSize.width}px</p> <p>Window Height: {windowSize.height}px</p> </div> ); }; export default ResizeWindow;
Đồng thời, tạo file ResizeWindow.css
/* src/components/ResizeWindow.css */ .resize-window { padding: 20px; border: 1px solid #ccc; margin-top: 20px; } .resize-window p { margin: 10px 0; font-size: 16px; font-weight: bold; }
Cuối cùng, import và sử dụng component ResizeWindow
Nhớ import
và sử dụng component ResizeWindow
trong App.js hoặc bất kỳ component nào bạn muốn.
// src/App.js import React from 'react'; import ResizeWindow from './components/ResizeWindow'; import './App.css'; function App() { return ( <div className="App"> <ResizeWindow /> </div> ); } export default App;
Mình đã thành công tạo ra một component ResizeWindow
theo dõi và hiển thị sự kiện thay đổi kích thước cửa sổ. Hãy chạy ứng dụng và kiểm tra thông tin chiều rộng và chiều cao cửa sổ mới trong console khi bạn thay đổi kích thước cửa sổ trình duyệt.
Bài tập này giúp bạn làm quen với xử lý sự kiện thay đổi kích thước cửa sổ trong ReactJS. Bạn đã học cách tạo và quản lý sự kiện hiệu quả, mở rộng khả năng tương tác trong ứng dụng ReactJS của bạn. Hãy tiếp tục tìm hiểu và xây dựng những trải nghiệm tuyệt vời hơn! Chúc bạn thành công!
Bài giải
-------------------- ######## --------------------
Câu hỏi thường gặp liên quan:
- Tạo một component ButtonClick trong ReactJS
- Tạo một component ToggleButton trong ReactJS
- Tạo một component InputChange trong ReactJS
- Tạo một component MouseHover trong ReactJS
- Tạo một component FormSubmission trong ReactJS
- Tạo một component DoubleClick có chứa một phần tử trong ReactJS
- Tạo một component KeyPress trong ReactJS
- Tạo một component Image Click trong ReactJS
- Tạo một component Context Menu trong ReactJS
- Tạo một component Drag and Drop trong ReactJS
- Tạo một component LinkClick trong ReactJs
- Tạo một component ResizeWindow trong ReactJS
- Tạo một component HoverEffect trong ReactJS
- Tạo một component DynamicButton trong ReactJS
- Tạo một component PasswordStrengthChecker trong ReactJS
- Tạo một component CopyToClipboard trong ReactJS
- Tạo một component ScrollEvent trong ReactJS
- Tạo một component Autocomplete trong ReactJS