REACTJS EXAMPLE
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Tạo một component Toggle với một state là isOn trong ReactJS

Trong bài tập này, mình sẽ tạo một component ReactJS có tên là Toggle. Component này sẽ có một trạng thái isOn để theo dõi trạng thái bật/tắt.Mình sẽ hiển thị một nút "Toggle" và một hình ảnh đèn sáng/tắt. Khi người dùng nhấn vào nút, giá trị của isOn sẽ thay đổi và hình ảnh đèn sáng/tắt sẽ chuyển đổi.

Tạo một component ReactJS có tên là Toggle

Cấu trúc thư mục:

z5101923778625 6ebaae6a0056c97b1a6507fb6c40d558 jpg

Bước 1: Tạo Component Toggle

Mở file src/components/Toggle.js và thêm nội dung sau:

// src/components/Toggle.js
import React, { useState } from 'react';
import './Toggle.css';

const Toggle = () => {
  // Sử dụng hook useState để tạo trạng thái isOn, khởi tạo là false
  const [isOn, setIsOn] = useState(false);

  // Hàm xử lý sự kiện khi nhấn nút Toggle
  const handleToggle = () => {
    setIsOn(!isOn);
  };

  // Cấu trúc JSX để hiển thị component Toggle
  return (
    <div className={`toggle ${isOn ? 'on' : 'off'}`}>
      <img
        src={isOn ? 'light-on.png' : 'light-off.png'}
        alt={isOn ? 'Light On' : 'Light Off'}
        className="light-image"
      />
      <button onClick={handleToggle} className="toggle-button">
        {isOn ? 'Turn Off' : 'Turn On'}
      </button>
    </div>
  );
};

export default Toggle;

Bước 2: Tạo File CSS

Tạo một file mới có tên là Toggle.css trong thư mục src/components. Thêm các quy tắc CSS để tùy chỉnh giao diện của Toggle:

/* src/components/Toggle.css */

.toggle {
  text-align: center;
  margin-top: 20px;
}

.toggle-button {
  padding: 12px 20px;
  font-size: 16px;
  margin-top: 20px;
  cursor: pointer;
  border: none;
  border-radius: 5px;
  background-color: #4caf50;
  color: #fff;
  outline: none;
}

.light-image {
  width: 100px;
  margin-top: 20px;
  transition: opacity 0.5s ease;
  color: brown;
}

.on .light-image {
  opacity: 1;
}

.off .light-image {
  opacity: 0.3;
}

Bước 3: Sử dụng Component trong App

Mở file src/App.js và sửa nội dung như sau:

// src/App.js
import React from 'react';
import Toggle from './components/Toggle';
import './App.css';

function App() {
  return (
    <div className="App">
      <header className="App-header">
        <Toggle />
      </header>
    </div>
  );
}

export default App;

Bước 4: Chạy ứng dụng

Mở terminal và chạy ứng dụng bằng lệnh:

npm start

Ứng dụng sẽ mở trên http://localhost:3000 và hiển thị component Toggle với nút "Toggle" và hình ảnh đèn sáng/tắt.

z5101921148890 7a5797b069ac8bf62804d4d3f090f15d jpgz5101921935262 8a0254b6c10a3184408f5616ad12b612 jpg

Trong bài tập này, mình đã tạo thành công một component Toggle để điều khiển trạng thái bật/tắt. Việc sử dụng hook useState giúp quản lý trạng thái một cách dễ dàng, và sự kết hợp với các sự kiện nhấn nút tạo ra một trải nghiệm tương tác thú vị.

Mình cũng đã tùy chỉnh giao diện của Toggle bằng cách sử dụng CSS để tạo màu nền khác nhau cho trạng thái bật và tắt, cũng như kích thước và vị trí của hình ảnh đèn.

Hy vọng rằng bài tập này đã giúp bạn hiểu rõ hơn về cách quản lý trạng thái và xử lý sự kiện trong ReactJS. Chúc bạn thành công trong việc áp dụng kiến thức này vào các dự án của mình!

test php

Bài giải

-------------------- ######## --------------------

Câu hỏi thường gặp liên quan:

Cùng chuyên mục:

Bài tập ReactJS: Forms và Controlled Components trong ReactJS

Bài tập ReactJS: Forms và Controlled Components trong ReactJS

Bài tập ReactJS: Handling Events trong ReactJS

Bài tập ReactJS: Handling Events trong ReactJS

Bài tập ReactJS: Components và Props trong ReactJS

Bài tập ReactJS: Components và Props trong ReactJS

Thiết kế và quản lý form đơn giản với thư viện Formik

Thiết kế và quản lý form đơn giản với thư viện Formik

React Microservices, xây dựng ứng dụng React mạnh mẽ

React Microservices, xây dựng ứng dụng React mạnh mẽ

Xây dựng ứng dụng CRUD với Redux Toolkit cực dễ dàng

Xây dựng ứng dụng CRUD với Redux Toolkit cực dễ dàng

Áp dụng Testing vào React cho ứng dụng của bạn như thế nào?

Áp dụng Testing vào React cho ứng dụng của bạn như thế nào?

Performance Optimization trong React Js, tăng hiệu suất cực ngon

Performance Optimization trong React Js, tăng hiệu suất cực ngon

React Hook là gì? Tại sao React Hook quan trọng trong dự án?

React Hook là gì? Tại sao React Hook quan trọng trong dự án?

Hiểu Route React nâng cao trong 10 phút bằng ví dụ

Hiểu Route React nâng cao trong 10 phút bằng ví dụ

Xây dựng Hook trong React JS (React Custom Hook)

Xây dựng Hook trong React JS (React Custom Hook)

React Hooks là một tính năng mới trong React 16.8. Cho phép sử dụng state…

Tạo ứng dụng ghi chú với ReactJS và Redux

Tạo ứng dụng ghi chú với ReactJS và Redux

Trong bài viết này mình sẽ hướng dẫn xây dựng một ứng dụng ghi chú…

Cách đẩy ứng dụng ReactJS lên Heroku và Deploy trên đó

Cách đẩy ứng dụng ReactJS lên Heroku và Deploy trên đó

Cho bạn nào chưa bíết thì Heroku mà môt nền tảng đám mây hỗ trợ…

Tích hợp Redux vào ReactJS

Tích hợp Redux vào ReactJS

Trong bài viết này chúng ta sẽ cùng nhau đi tìm hiểu về cách tích…

Tạo máy tính đơn giản bằng ReactJS

Tạo máy tính đơn giản bằng ReactJS

Trong bài này ta sẽ xây dựng một ứng dụng máy tính đơn giản bằng…

Redux là gì? Tại sao lại ứng dụng trong ReactJS

Redux là gì? Tại sao lại ứng dụng trong ReactJS

Trong bài viết này chúng ta sẽ cùng nhau đi tìm hiểu về Redux trong…

useContext trong React Hook

useContext trong React Hook

Trong bài viết này chúng ta sẽ cùnuseContextg nhau đi tìm hiểu về useContext trong…

React Router cơ bản

React Router cơ bản

Có thể khẳng định rằng những trang SPA (single page application) hiện đang rất phổ…

useEffect trong React Hooks

useEffect trong React Hooks

Trong bài viết này chúng ta sẽ đi tìm hiểu về useEffect trong React Hooks.…

Tìm hiểu React Hook useState

Tìm hiểu React Hook useState

React Hooks bao gồm rất 10 hooks khác nhau, trong phạm vi bài viết này…

Top