React之Arco组件:Switch

本文介绍如何利用React和Arco组件创建Switch开关,通过改变button样式实现开关效果。文章详细讲解了设计思路,包括简化代码的步骤,并重点总结了通过变量控制class以灵活改变样式的技巧,以及实现小点动态运动的方法。
摘要由CSDN通过智能技术生成

设计思路

本质上switch就是一个button,通过改变其button样式,就达到开关的效果,最终成果如下

​简化代码

swtich.tsx

import React,{useState} from "react";

function Switch(){

    // 创建本地的checked 的state,用于控制开关关闭或开始
    const [checked, setChecked] = useState<boolean>(false)


    // Switch点击事件
    const onHandleClick: React.MouseEventHandler<HTMLButtonElement> = (event => {
        setChecked(!checked);
    })

    // 通过checked给予classname
    const className = checked ? 'arco-switch-checked' : ''

    return (
        <button
        className={'arco-switch ' + className}
        onClick={onHandleClick}
        role="switch"
        type="button"
        aria-checked={checked}
        >
            <div className&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值