最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

為什么vue中不建議使用空字符串作為className

 更新時間:2021年09月23日 16:29:00   作者:油炸皮卡丘  
本文主要介紹了為什么vue中不建議使用空字符串作為className,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

在我們用三元表達式給DOM元素設(shè)置class時,使用空字符串,會導(dǎo)致渲染出一個沒有值的空class, 為了避免這種情況出現(xiàn),可以使用null來代替空字符串。

<!-- ❌ -->
<div :class="isBold ? 'bold' : ''">
<!-- <div class> -->

<!-- ✅ -->
<div :class="isBold ? 'bold' : null">
<!-- <div> -->

比較空字符串''和null

繼續(xù)來分析上面2行代碼

情況1:使用空字符串''

我們使用三元操作符,來決定是否給元素綁定class, isBold為true時綁定,返回bold,否則,返回''

<div :class="isBold ? 'bold' : ''"></div>
data() {
  return {
    isBold: false
  }
}

這時,渲染結(jié)果如下

<div class></div>
<!-- 😱 空的class -->

如果isBold為true,渲染結(jié)果如下

<div class="bold"></div>

情況2:使用null

看看使用null的渲染結(jié)果

<div :class="isBold ? 'bold' : null"></div>

data() {
  return {
    isBold: false
  }
}

渲染結(jié)果如下

<div></div>
<!-- ✅ 很好 無空class>

如果isBold為false,渲染結(jié)果如下

<div class="bold"></div>

情況3:使用undefined

undefined和null的效果一樣

<div :class="isBold ? 'bold' : undefined"></div>

<div></div>
<!-- ✅ 很好 無空class>

關(guān)于False值

當isBold的值為以下值時,三元表達式返回的也是假值

false
undefined
null
NaN
0
"" or '' or `` (empty string)

使用對象的形式綁定class

使用對象的形式更加可讀

<div :class="{ bold: isBold }"></div>

但三元表達式最佳的用處是在綁定復(fù)雜的class時

<div :class="isActive ? 'underline bold' : null"></div>

使用 &&綁定class

來看看另外一種情況

<div :class="isBold && 'bold'"></div>

&& 不僅是一個邏輯操作符,它同樣可以返回值,正如上面的代碼,如果isBold為真,它會返回bold,但是isBold為假的時候呢?

案例1:isBold為false

<div :class="isBold && 'bold'"></div>

這個時候回返回空class

<div class></div>

案例2:isBold為null

<div :class="isBold && 'bold'"></div>

為null時不會有空class

<div></div>

案例3:isBold為undefined

<div :class="isBold && 'bold'"></div>

為undefined時也不會有空class

<div></div>

造成上面這種情況的出現(xiàn)不是&&的問題,它只是用來做判斷并返回值而已

所以,如果我們想要使用&&時避免返回空class,最好用null或者undefined

但我更推薦大家使用對象的或者數(shù)組綁定的語法去設(shè)置class

空class就一定不對嗎?

在W#C的標準中, 空class也是可以用的

<!-- 無錯誤 -->
<div class>...</div>

<!-- 無錯誤 -->
<div>...</div>

HTML的語法用也沒要求不準使用空的屬性

但是,為了代碼的可讀性,建議大家不要使用空屬性,特別是在需要操作DOM屬性做判斷時

空的屬性很容易造成難以察覺的錯誤

e.target.classList

e.className

img.src

...

但是...
空的id屬性是不被允許的

<!-- 錯誤 -->
<div id>...</div>

<!-- 錯誤 -->
<div id="">...</div>

<!-- 正確 -->
<div id="name">...</div>

❌ Error: An ID must not be the empty string.

到此這篇關(guān)于為什么vue中不建議使用空字符串作為className的文章就介紹到這了,更多相關(guān)vue 空字符串作為className內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue2.0實現(xiàn)前端星星評分功能組件實例代碼

    vue2.0實現(xiàn)前端星星評分功能組件實例代碼

    本文通過實例代碼給大家介紹了vue2.0實現(xiàn)前端星星評分功能組件,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2018-02-02
  • Vue3中使用vuedraggable拖拽實戰(zhàn)教程

    Vue3中使用vuedraggable拖拽實戰(zhàn)教程

    這篇文章主要介紹了Vue3中使用vuedraggable拖拽實戰(zhàn)教程,文中通過示例介紹了vue3拖拽組件vuedraggable的使用demo,需要的朋友可以參考下
    2023-06-06
  • 手把手教學(xué)vue的路由權(quán)限問題

    手把手教學(xué)vue的路由權(quán)限問題

    這篇文章主要介紹了手把手教學(xué)vue的路由權(quán)限問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue提示框組件vue-notification使用詳解

    Vue提示框組件vue-notification使用詳解

    這篇文章主要介紹了Vue提示框組件vue-notification使用詳解,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • vue2.0 解決抽取公用js的問題

    vue2.0 解決抽取公用js的問題

    這篇文章主要介紹了vue2.0 解決抽取公用js的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • 實例解析Vue.js下載方式及基本概念

    實例解析Vue.js下載方式及基本概念

    vue是一套用于構(gòu)建用戶界面的漸進式框架。接下來通過本文給大家分享Vue.js下載方式及基本概念,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • 詳解vite如何支持cjs方案示例

    詳解vite如何支持cjs方案示例

    這篇文章主要介紹了vite如何支持cjs方案示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • vuex?設(shè)計思路和實現(xiàn)方式

    vuex?設(shè)計思路和實現(xiàn)方式

    這篇文章主要介紹了vuex?設(shè)計思路和實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue開發(fā)實現(xiàn)評論列表

    vue開發(fā)實現(xiàn)評論列表

    這篇文章主要為大家詳細介紹了vue開發(fā)實現(xiàn)評論列表,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Vue簡介、引入、命令式與聲明式編程詳解

    Vue簡介、引入、命令式與聲明式編程詳解

    原生開發(fā)和Vue開發(fā)的模式和特點,我們會發(fā)現(xiàn)是完全不同的,這里其實涉及到兩種不同的編程范式:命令式編程和聲明式編程,下面這篇文章主要給大家介紹了關(guān)于Vue簡介、引入、命令式與聲明式編程的相關(guān)資料,需要的朋友可以參考下
    2022-10-10

最新評論

万载县| 盐边县| 土默特左旗| 曲阜市| 孟连| 庆城县| 广昌县| 藁城市| 邯郸县| 莫力| 黄平县| 什邡市| 博罗县| 古浪县| 五指山市| 广元市| 莒南县| 汽车| 长兴县| 神农架林区| 永嘉县| 漯河市| 毕节市| 常宁市| 大悟县| 商城县| 安龙县| 云霄县| 河北区| 青海省| 镇坪县| 花垣县| 聂荣县| 汝城县| 东莞市| 邮箱| 姜堰市| 大安市| 年辖:市辖区| 田林县| 临安市|