react中元素的显示和隐藏方式的使用(函数组件)


前言:

react中,我们有常用的有四种方式来显示元素的显示和隐藏,和vue不同,vue中我们使用v-if或v-show来显示元素的隐藏和显示

下面分别介绍一下在react中隐藏和显示元素的方法

第一种:用style来显示隐藏

import React, { useState } from 'react'

export default function Boke() {
  const [isShow,setisShow] = useState(false)
  const check = ()=>{
    setisShow(!isShow)
  }
  return (
    <div>
        {/*第一种方式,用style来显示隐藏*/}
        <button style={{display:isShow?'block':'none'}}>古力娜扎</button>
        <button style={{display:isShow?'none':'block'}}>迪丽热巴</button>
        <button onClick={()=>check()}>点击切换</button>
      </div>
  )  
}

第二种:用三元运算符

import React, { useState } from 'react'

export default function Boke() {
  const [isShow, setisShow] = useState(false)
  const check = () => {
    setisShow(!isShow)
  }
  return (
    <div>
      {/*第二种方法,用三元运算符*/}
      {isShow ? <button >古力娜扎</button> : <button >迪丽热巴</button>}
      <button onClick={() => check()}>点击切换</button>
    </div>
  )
}

第三种:通过短路逻辑进行元素显隐

import React, { useState } from 'react'

export default function Boke() {
  const [isShow, setisShow] = useState(false)
  const check = () => {
    setisShow(!isShow)
  }
  return (
    <div>
      {/*第三种方式*/}
      {isShow && <button >古力娜扎</button>}
      {!isShow && <button >迪丽热巴</button>}
      <button onClick={() => check()}>点击切换</button>
    </div>
  )
}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用`useState`和`useEffect`钩子来实现监听滚动条的效果,然后根据滚动条的位置来控制按钮的显示隐藏。 代码示例如下: ```jsx import React, { useState, useEffect } from 'react'; const ScrollButton = () => { const [showButton, setShowButton] = useState(false); useEffect(() => { // 监听滚动条事件 window.addEventListener('scroll', handleScroll); // 组件卸载时移除滚动条事件监听 return () => { window.removeEventListener('scroll', handleScroll); } }, []); const handleScroll = () => { // 获取当前滚动条的位置 const scrollTop = document.documentElement.scrollTop || document.body.scrollTop; // 当滚动条超过 200px 时显示按钮 if (scrollTop > 200) { setShowButton(true); } else { setShowButton(false); } }; const handleClick = () => { // 点击按钮时回到页面顶部 window.scrollTo({ top: 0, behavior: 'smooth' }); }; return ( <button onClick={handleClick} style={{ display: showButton ? 'block' : 'none' }} > 返回顶部 </button> ); }; export default ScrollButton; ``` 在组件,我们使用`useState`来保存按钮的显示状态,初始值为`false`。然后使用`useEffect`钩子来监听滚动条事件,并在组件卸载时移除该事件监听。 在`handleScroll`函数,我们获取当前滚动条的位置,并根据位置来判断是否显示按钮。当滚动条超过 200px 时,将显示状态设置为`true`,否则设置为`false`。 最后,我们在组件返回一个按钮元素,并在`style`属性根据显示状态来设置按钮的`display`属性。当按钮显示时,点击按钮会回到页面顶部。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值