react中使用Switch语句简略笔记

本文详细介绍了如何在React函数组件中使用useState和useEffect实现动态文本展示。根据当前日期判断是周末还是工作日,并显示相应提示。通过案例展示了switch语句的用法,强调了break的重要性以及匹配条件的严格性。同时,提醒在函数式组件中正确管理和更新状态的方法。
摘要由CSDN通过智能技术生成

  语法: 

function App () {
  const [d] = useState(new Date().getDay())
  const [text, setText] = useState('今天星期几?')
  useEffect(
    () => {
      switch (d) {
        case 0:
        case 6:
          setText('周末时间!')
          break
        case 4:
        case 5:
          setText('撑一撑,快解放了!')
          break
        default:
          setText('我真是苦命儿...')
      }
    },
    [d]
  )
  return (
    <div>
      <p
        style={{
          color: 'skyblue',
          fontSize: '10',
          backgroundColor: 'pink'
        }}>
        {text}
      </p>
    </div>
  )
}

break: 立刻结束流程(打破);

其中case 0/case 6 都会触发同一句输出结果,case4/case5同理;

default: 前面的case未匹配到,则匹配default,输出其结果并break;

注意:

1.如果 default 不是 switch 代码块中最后一个case,请记得用 break 结束默认case;

2.如果未找到匹配的 case,程序将继续使用默认 label.如果未找到默认 label,程序将继续 switch 后的语句;

3.上面例子中 d 的值必须与 case 值 完全匹配 才会触发其下的label, 因为这个语法内部使用了严格比较: "==="  ,只有操作数属于同一类型时,严格比较才能为 true

4.在函数式组件中switch语句需用useEffect包起来,当然,也可以写在return输出部分,不过要用到自调用函数.无论那种方法都不要忘记为函数式组件提供状态用useState

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值