第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何顯示隱藏的組件?

如何顯示隱藏的組件?

猛跑小豬 2022-06-05 10:53:49
這是標(biāo)記為完成并在標(biāo)記后消失的服務(wù)列表。我的組件有以下代碼。當(dāng)用戶單擊“完成”按鈕時(shí),類會(huì)發(fā)生變化(首先變?yōu)椤邦A(yù)訂完成”),組件的顏色也會(huì)發(fā)生變化。半秒后,組件也被隱藏(添加了“隱藏”類。)。const Booking = (props) => {let { hidden } = useContext(ContextBooking)let completed = props.completed    return (            <li                 className={                  isCompleted && isHidden            ? 'booking-complete hide'            : isCompleted              ? 'booking-complete'              : 'booking'      }}                key={props.id}                id={props.id}            >                <h3>{props.date}</h3>                <h4>{props.time}</h4>                <h5>{props.name}</h5>            </li>    )}<button   onClick={() => {     if (!isCompleted && !isHidden) {       setIsCompleted(!isCompleted); //adds 'booking-complete' and change colour       setTimeout(() => setIsHidden(!isHidden), 500) //adds 'hide' class to component and 'display: none'     else if (isCompleted && !isHidden) {       setIsCompleted(!isCompleted);     }     else {       setIsCompleted(!isCompleted);       setIsHidden(!isHidden);     }}}>    {!isCompleted ? `Completed` : `Not completed`}</button>在另一個(gè)組件中,我正在創(chuàng)建多個(gè)“預(yù)訂”組件。我現(xiàn)在的目標(biāo)是,當(dāng)單擊“顯示隱藏”按鈕(見下文)時(shí),之前隱藏的所有組件(具有“隱藏”類的組件,如上所述)應(yīng)該再次出現(xiàn)(我想只是刪除“隱藏”類會(huì)起作用,但怎么做?)const DisplayBookings = () => {    const display = (day) => allBookings.map(item =>         item.day === day &&        <Booking            completed={item.completed}            key={item.id}            id={item.id}            time={item.time}            name={item.name}            date={item.date}         />    )   <button      onClick={() => //how to make this button remove the 'hide' class of all <Booking /> components that have it //but still show components as 'completed' and other as not?   }>    Show hidden      </button>
查看完整描述

2 回答

?
繁花不似錦

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊

假設(shè)hidden可以接收 True 或 False,您可以這樣做:


const [hide, setHide] = useState(false);


hideHandler = () => {

  setHide(!hide);

};

然后在具有該屬性的 jsx 標(biāo)記中hidden,您可以這樣做:


<element hidden={hide} />

讓我知道隱藏屬性是否可以像上面的代碼一樣接收 True 或 False。


查看完整回答
反對(duì) 回復(fù) 2022-06-05
?
元芳怎么了

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊

您可以將另一個(gè)類像列表hide-hidden的包裝器<Booking />并應(yīng)用樣式

.hide-hidden li.hidden { display: none }


然后你可以有條件地添加類


const DisplayBookings = () => {

  const [showHidden, setShowHidden] = useState(false)

  //..

  return (

    //...

    <ol className={!showHidden && 'hide-hidden'}>

    {/* ... Booking list ... */}

    </ol>

    <button onClick={() => setShowHidden(true)}>

      Show hidden

    </button>

    //...

  )

}

或者您可以將showHidden狀態(tài)Booking作為道具傳遞

 <Booking showHidden={showHidden} {...otherProps} />

并且只在里面Booking添加hidden類<li />props.showHidden && hidden == true


查看完整回答
反對(duì) 回復(fù) 2022-06-05
  • 2 回答
  • 0 關(guān)注
  • 296 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)