React?中如何將CSS?visibility?屬性設(shè)置為?hidden
在 React 中將 CSS visibility 屬性設(shè)置為 hidden:
- 在指示元素是否應(yīng)該可見的狀態(tài)中存儲(chǔ)一個(gè)布爾值。
- 有條件地在元素的樣式屬性中設(shè)置可見性屬性。
- 例如,
style={{visibility: isVisible ? “visible”:“hidden”}}。
import {useState} from 'react';
export default function App() {
const [isVisible, setIsVisible] = useState(true);
const handleClick = event => {
// ??? toggle visibility
setIsVisible(current => !current);
};
return (
<div>
<div style={{visibility: isVisible ? 'visible' : 'hidden'}}>
<h2>website: zadmei.com</h2>
</div>
<button onClick={handleClick}>Toggle visibility</button>
</div>
);
}我們使用 useState 掛鉤來存儲(chǔ)一個(gè)布爾值,指示元素是否應(yīng)該可見。
每次單擊按鈕元素時(shí),都會(huì)切換 isVisible 布爾值,但這可以通過任何其他方式觸發(fā)。
注意,我們向setIsVisible傳遞了一個(gè)函數(shù)。 這很重要,因?yàn)槲覀儌鬟f給setIsVisible的函數(shù)保證會(huì)使用isVisible布爾值的當(dāng)前(最新)值來調(diào)用。
如果新狀態(tài)是使用先前狀態(tài)計(jì)算的,則可以將函數(shù)傳遞給 setState()。
div 元素的 style 屬性的可見性屬性是使用三元運(yùn)算符有條件地設(shè)置的。
三元運(yùn)算符與 if/else 語句非常相似。
如果問號(hào)左邊的值為真,則運(yùn)算符返回冒號(hào)左邊的值,否則返回冒號(hào)右邊的值。
const result1 = 5 === 5 ? 'yes' : 'no'; console.log(result1); // ??? "yes" const result2 = 5 === 10 ? 'yes' : 'no'; console.log(result2); // ??? "no"
如果 isVisible 狀態(tài)變量存儲(chǔ)了一個(gè)真值,我們將 visibility 屬性設(shè)置為 visible。 否則,它被設(shè)置為 hidden。
如果我們依賴為樣式設(shè)置類名,也可以使用相同的方法。
import {useState} from 'react';
// ??? import css file
import './App.css';
export default function App() {
const [isVisible, setIsVisible] = useState(true);
const handleClick = event => {
// ??? toggle visibility
setIsVisible(current => !current);
};
return (
<div>
<div className={isVisible ? 'visible' : 'hidden'}>
<h2>Some content here</h2>
</div>
<button onClick={handleClick}>Toggle visibility</button>
</div>
);
}下面是定義 visible 和 hidden 類的css。
.visible {
visibility: visible;
}
.hidden {
visibility: hidden;
}上面的代碼片段使用類而不是 style 屬性實(shí)現(xiàn)了相同的結(jié)果。
如果要設(shè)置類的元素也有不同的類,請(qǐng)使用模板字符串。
import {useState} from 'react';
// ??? import css file
import './App.css';
export default function App() {
const [isVisible, setIsVisible] = useState(true);
const handleClick = event => {
// ??? toggle visibility
setIsVisible(current => !current);
};
return (
<div>
<div className={`my-class ${isVisible ? 'visible' : 'hidden'}`}>
<h2>Some content here</h2>
</div>
<button onClick={handleClick}>Toggle visibility</button>
</div>
);
}${} 語法使我們能夠直接在模板字符串中計(jì)算表達(dá)式。
到此這篇關(guān)于React 中 如何處理 visibility: hidden的文章就介紹到這了,更多相關(guān)React 處理 visibility: hidden內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
手把手教您實(shí)現(xiàn)react異步加載高階組件
這篇文章主要介紹了手把手教您實(shí)現(xiàn)react異步加載高階組件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
React如何實(shí)現(xiàn)像Vue一樣將css和js寫在同一文件
這篇文章主要介紹了React如何實(shí)現(xiàn)像Vue一樣將css和js寫在同一文件問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
React中Suspense及l(fā)azy()懶加載及代碼分割原理和使用方式
這篇文章主要介紹了React中Suspense及l(fā)azy()懶加載及代碼分割原理和使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
react 不用插件實(shí)現(xiàn)數(shù)字滾動(dòng)的效果示例
這篇文章主要介紹了react 不用插件實(shí)現(xiàn)數(shù)字滾動(dòng)的效果示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04

