iT邦幫忙

2023 iThome 鐵人賽

DAY 10
0
自我挑戰組

從零開始學Web Framework : React篇系列 第 10

Day_10:點擊按鈕使其隨機變色

  • 分享至 

  • xImage
  •  
  1. code
import React, { useState } from 'react';

//生成隨機顏色的函數
function getRandomColor() {
  const letters = '0123456789ABCDEF'; 
  //創建16進制顏色代碼有效字符
  let color = '#';  
  //創建一個字符串color將其初始化為#(這是16進制顏色值的前綴)
  for (let i = 0; i < 6; i++) {
    color += letters[Math.floor(Math.random() * 16)];
  }
  return color;
}
//在每次循環中,letters會隨機選擇一個字符將他添加到color中;Math.random()生成一個介於0和1之間的隨機小數並乘以16後,Math.floor()將結果向下取整數,進而得到一個介於0~15之間的隨機整數

function ColorChanger() {
  const [backgroundColor, setBackgroundColor] = useState('#FFFFFF');
//使用useState hook來創建一個名叫backgroundColor的狀態變量;初始值為白色(#FFFFFF)
//點擊按鈕時事件處理的函數
  const handleClick = () => {
    const newColor = getRandomColor();//生成一個新的隨機顏色
    setBackgroundColor(newColor);
    //使用setBackgroundColor函數更新backgroundColor的數值
  };
  
  return (
    <div>
      <button
        type="button"
        style={{ backgroundColor: backgroundColor }}
        onClick={handleClick}
      >
        Change Color
      </button>
    </div>
  );
}

export default ColorChanger;

2.結果


上一篇
Day_9:讓按鈕有計數功能
下一篇
Day_11:摺疊圖片的功能
系列文
從零開始學Web Framework : React篇30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言