vue如何解決數(shù)據(jù)加載時(shí),插值表達(dá)式閃爍問題
數(shù)據(jù)加載,插值表達(dá)式閃爍問題
1.在公共的css樣式中加入
[v-cloak] { ? ? display: none !important; }
2.在el掛載的標(biāo)簽上添加
<div class="#app" v-cloak> ? ? <p>{undefined{value.name}}</p> </div>
解決插值表達(dá)式渲染數(shù)據(jù)閃動(dòng)
在使用Vue的時(shí)候,經(jīng)常會(huì)用到插值表達(dá)式,也就是兩個(gè)大括號(hào){{}}的語法,但是有時(shí)候會(huì)出現(xiàn)如下問題
先看代碼
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> </head> <body> <div id="app">{{mes}}</div> <script> var app = new Vue({ el:'#app', data(){ return{ mes:'helloworld' } } }) </script> </body> </html>
出現(xiàn)的問題
瀏覽器瘋狂刷新,在某一瞬間的是內(nèi)容是這樣的,然后才會(huì)顯示為helloworld,會(huì)有一個(gè)閃動(dòng)的問題,這其實(shí)是因?yàn)椋绻麊渭兊?<div id="app">{{mes}}</div>一句話,瀏覽器是解析不出來的,而Vue它自己的語法中是去將頁面的{{mes}}給解析出來,呈現(xiàn)出來在瀏覽器中,但在解析這期間是需要時(shí)間的,如果電腦運(yùn)行速度慢,這就會(huì)越發(fā)的明顯,如某貴校的電費(fèi)充值頁面
為了解決這種不友好的問題,Vue官方其實(shí)給出了辦法的,使用v-cloak指令
解決方法如下圖
原理就是讓為編譯的給事先隱藏,上面的[v-cloak]指的是屬性選擇器。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Vue3.0 + TypeScript + Vite初體驗(yàn)
這篇文章主要介紹了詳解Vue3.0 + TypeScript + Vite初體驗(yàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02一篇文章搞懂Vue3中如何使用ref獲取元素節(jié)點(diǎn)
過去在Vue2中,我們采用ref來獲取標(biāo)簽的信息,用以替代傳統(tǒng) js 中的 DOM 行為,下面這篇文章主要給大家介紹了關(guān)于如何通過一篇文章搞懂Vue3中如何使用ref獲取元素節(jié)點(diǎn)的相關(guān)資料,需要的朋友可以參考下2022-11-11vue-router實(shí)現(xiàn)編程式導(dǎo)航的代碼實(shí)例
今天小編就為大家分享一篇關(guān)于vue-router實(shí)現(xiàn)編程式導(dǎo)航的代碼實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-01-01Vue3+TS實(shí)現(xiàn)語音播放組件的示例代碼
這篇文章主要介紹了如何利用Vue+TS實(shí)現(xiàn)一個(gè)簡易的語音播放組件,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Vue有一定的幫助,需要的可以參考一下2022-03-03