如何優雅處理vue中的條件渲染

2021-08-30 17:38:17 字數 1976 閱讀 1718

說到條件渲染,有些人會脫口而出v-ifv-show,你是否厭倦了if…elseswitch巢狀,是否反感大量出現的||運算子,也許你需要了解一下vuefilters

基本操作
如果需要根據情況渲染不同資料,在條件允許的前提下,用filters代替v-if

}// 實用過濾器進行模板繫結

<

/div>

<

/template>

export

default},

filters:

return list[type]

// 每乙個過濾器都應該有返回函式}}

}<

/script>

filtersdata同級,在模板渲染過程中,如果想分情況渲染不同內容,往往可以省掉不必要的v-if以及重複**

filter是否可以直接用於v-if

測試**

"msg | aisle"

>

// v-if接受的是值,而非表示式

你又看見我啦

<

/div>

<

/template>

export

default},

filters:

return list[type]}}

}<

/script>

**報錯啦:**property or method 「aisle」 is not defined

如果優雅的實現根據大量type選擇性顯示內容

"showmag(msg)"

>

// 接受函式的返回值

你又看見我啦

<

/div>

<

/template>

export

default},

methods:

return list[type]}}

}<

/script>

載入資料期間顯示了靜態頁面怎麼辦
你是否遇到過,body資料正在載入,寫死的靜態footer已經展示,造成一種閃爍的假象,那麼如何優雅的解決這個問題

// vue自帶了v-clock來處理頁面渲染,需要配合css使用

v-for=

"(item, index) in viewdata"

:key=

"index"

>

}<

/div>

我是footer<

/footer>

<

/div>

<

/template>

export

default}}

<

/script>

[v-cloak]

<

/style>

如此操作就能解決大部分頁面閃爍的問題,值得注意的是有一種情況v-clock會失效

style通過@impor匯入時,優於@import是頁面載入完成後才開始載入,所以頁面還是會閃爍

解決辦法是通過link或者內聯方式

vue中v if條件渲染

1.判斷後台返回的值是檢測中止 或出具報告的時候 讓更改狀態按鈕消失 已發樣等待收樣 支付完成等待發樣 出現取消專案 html部分 v for yong,index in yonghu key index class person box class person one span div clas...

vue的條件渲染

有兩種方式 v if a.單路分支 f true p b.雙路分支 f true p else false p c.多路分支 text a a p else if text b b p else c p v show f if條件 p new vue v if vs v show 1.v if 操作...

如何優雅的處理錯誤

1 封裝錯誤error,使其記錄錯誤檔名稱 檔案路徑 行數 操作 錯誤資訊等相關資訊。封裝錯誤型別,myerror 型別記錄了檔案,行號,相關的錯誤資訊 type myerror struct patherror 除了底層錯誤外還提供了使用哪個檔案,執行哪個操作等相關資訊。type patherro...