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

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

應(yīng)用按鈕需要被禁用,但無法禁用 Toggler2 按鈕的 onclick

應(yīng)用按鈕需要被禁用,但無法禁用 Toggler2 按鈕的 onclick

慕標(biāo)琳琳 2023-06-09 14:46:54
加載時(shí),需要禁用 Apply 按鈕并單擊 Toggler1 按鈕,我想更改狀態(tài),即其中一個(gè)選項(xiàng)卡標(biāo)志將為 true,因此應(yīng)啟用 apply 按鈕,一旦標(biāo)志在任何選項(xiàng)卡中為 true 并且何時(shí)任何選項(xiàng)卡中的標(biāo)志都是假的,應(yīng)用按鈕應(yīng)該被禁用,當(dāng)我們點(diǎn)擊 Toggler2 按鈕時(shí),我正在設(shè)置標(biāo)志條件為 flase 的狀態(tài),無法禁用應(yīng)用按鈕。我正在檢查標(biāo)志的條件,基于此我正在設(shè)置狀態(tài),即 setEdit(flase),因?yàn)樗谘h(huán)中,所以無法正確設(shè)置狀態(tài)點(diǎn)擊 Toggeler1 按鈕,應(yīng)用按鈕將被啟用,點(diǎn)擊切換器 2,應(yīng)用按鈕需要被禁用但無法禁用應(yīng)用按鈕,即使數(shù)據(jù)中的標(biāo)志為 false?import React from "react";import "./styles.css";export default function App() {? let items = [? ? {? ? ? tab: "tab1",? ? ? info: [? ? ? ? { mnemonic: "first", flag: false },? ? ? ? { mnemonic: "second", flag: false }? ? ? ]? ? },? ? {? ? ? tab: "tab2",? ? ? info: [? ? ? ? { mnemonic: "first", flag: false },? ? ? ? { mnemonic: "second", flag: false }? ? ? ]? ? },? ? {? ? ? tab: "tab3",? ? ? info: [? ? ? ? { mnemonic: "first", flag: false },? ? ? ? { mnemonic: "second", flag: false }? ? ? ]? ? }? ];? let item2 = [? ? {? ? ? tab: "tab1",? ? ? info: [? ? ? ? { mnemonic: "first", flag: true },? ? ? ? { mnemonic: "second", flag: false }? ? ? ]? ? },? ? {? ? ? tab: "tab2",? ? ? info: [? ? ? ? { mnemonic: "first", flag: false },? ? ? ? { mnemonic: "second", flag: false }? ? ? ]? ? },? ? {? ? ? tab: "tab3",? ? ? info: [? ? ? ? { mnemonic: "first", flag: false },? ? ? ? { mnemonic: "second", flag: false }? ? ? ]? ? }? ];? const [edit, setEdit] = React.useState(true);? const [data, setData] = React.useState(items);? const changeFlag = () => {? ? setData(item2);? };? const changeFlag1 = () => {? ? setData(items);? };? React.useEffect(() => {? ? data.forEach((_eachItem) => {? ? ? const isChanged = _eachItem.info.find((_each) => _each.flag);? ? ? if (isChanged) {? ? ? ? setEdit(false);? ? ? }? ? });? }, [data]);? console.log(data);? return (? ? <div className="App">? ? ? <button onClick={changeFlag}> Toggler1</button>? ? ? <button onClick={changeFlag1}> Toggler2</button>? ? ? <button disabled={edit}> Apply</button>? ? </div>? );}
查看完整描述

1 回答

?
慕田峪4524236

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

您正在尋找數(shù)組中的某些項(xiàng)目data,以使數(shù)組中的某些元素info具有真實(shí)flag值。這可以通過Array.prototype.some()來完成。


const isChanged = data.some((item) => item.info.some((el) => el.flag));

您的效果需要檢查是否滿足此條件,并edit使用相反的條件更新狀態(tài)以禁用 Apply 按鈕。


React.useEffect(() => {

? const isChanged = data.some((item) => item.info.some((el) => el.flag));

? setEdit(!isChanged);

}, [data]);

編輯 apply-button-need-to-be-disabled-but-unable-to-disable-onclick-of-toggler2-butto


或者,您可以使用 Array.prototype.every 并檢查所有數(shù)據(jù)項(xiàng)是否都具有錯(cuò)誤信息標(biāo)志并返回并為編輯/禁用模式設(shè)置肯定確認(rèn)。


React.useEffect(() => {

? const isChanged = data.every((item) => item.info.every(({ flag }) => !flag));

? setEdit(isChanged);

}, [data]);


查看完整回答
反對 回復(fù) 2023-06-09
  • 1 回答
  • 0 關(guān)注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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