Vue過(guò)濾器使用方法詳解
前言
本篇來(lái)學(xué)習(xí)vue(僅適用vue2)中過(guò)濾器的基本用法
過(guò)濾器
過(guò)濾器(Filters)是vue為開(kāi)發(fā)者提供的功能,常用于文本的格式化。可以用在兩個(gè)地方:插值表達(dá)式和v-bind屬性綁定。
私有過(guò)濾器
插值表達(dá)式中使用
<p>{<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E-->{message | capital }}</p>
使用示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>過(guò)濾器基本使用</title> </head> <body> <div id="app"> <p>{{message | capital }}</p> </div> <!-- 開(kāi)發(fā)環(huán)境版本,包含了有幫助的命令行警告 --> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script> const app = new Vue({ el: '#app', data: { message: 'hello 小白!' }, // 定義過(guò)濾器一定要在filters中 filters: { // 過(guò)濾器形參中的val 是管道符前面的值 capital(val) { // 字符串 charAt(0)方法,取對(duì)應(yīng)索引值 console.log(val.charAt(0)) // toUpperCase 轉(zhuǎn)大寫(xiě) const first = val.charAt(0).toUpperCase() // slice 指定索引往回截取 const other = val.slice(1) // 過(guò)濾器一定要有返回值 return first + other } } }) </script> </body> </html>
v-bind屬性綁定
<input type="text" v-bind:placeholder="message|capital">
使用示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>過(guò)濾器基本使用</title> </head> <body> <div id="app"> <input type="text" v-bind:placeholder="message|capital"> </div> <!-- 開(kāi)發(fā)環(huán)境版本,包含了有幫助的命令行警告 --> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script> const app = new Vue({ el: '#app', data: { message: 'hello 小白!' }, // 定義過(guò)濾器一定要在filters中 filters: { // 過(guò)濾器形參中的val 是管道符前面的值 capital(val) { // 字符串 charAt(0)方法,取對(duì)應(yīng)索引值 console.log(val.charAt(0)) // toUpperCase 轉(zhuǎn)大寫(xiě) const first = val.charAt(0).toUpperCase() // slice 指定索引往回截取 const other = val.slice(1) // 過(guò)濾器一定要有返回值 return first + other } } }) </script> </body> </html>
全局過(guò)濾器
使用Vue.filter()定義全局過(guò)濾器;接收兩個(gè)參數(shù) 第一個(gè)全局過(guò)濾名稱(chēng),第二個(gè) 全局過(guò)濾器的處理函數(shù)
使用示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>過(guò)濾器基本使用</title> </head> <body> <div id="app"> <p>{{message | capital }}</p> </div> <div id="app2"> <input type="text" v-bind:placeholder="message|capital"> </div> <!-- 開(kāi)發(fā)環(huán)境版本,包含了有幫助的命令行警告 --> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script> // 使用Vue.filter()定義全局過(guò)濾器;接收兩個(gè)參數(shù) 第一個(gè)全局過(guò)濾名稱(chēng),第二個(gè) 全局過(guò)濾器的處理函數(shù) Vue.filter('capital', function (val) { // 字符串 charAt(0)方法,取對(duì)應(yīng)索引值 console.log(val.charAt(0)) // toUpperCase 轉(zhuǎn)大寫(xiě) const first = val.charAt(0).toUpperCase() // slice 指定索引往回截取 const other = val.slice(1) // 過(guò)濾器一定要有返回值 return first + other }) const app = new Vue({ el: '#app', data: { message: 'hello 小白!' } }) const app2 = new Vue({ el: '#app2', data: { message: 'hello 大海!' } }) </script> </body> </html>
到此這篇關(guān)于Vue過(guò)濾器使用方法詳解的文章就介紹到這了,更多相關(guān)Vue過(guò)濾器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue.js展示AJAX數(shù)據(jù)簡(jiǎn)單示例講解
當(dāng)通過(guò)AJAX方式取回?cái)?shù)據(jù)后,使用vue.js可以完美地按一定邏輯在頁(yè)面上的展示數(shù)據(jù),代碼簡(jiǎn)單、優(yōu)美、自然,而且便于與在用的頁(yè)面框架集成,本文給大家介紹Vue.js展示AJAX數(shù)據(jù)簡(jiǎn)單示例2017-03-03Nuxt引入vue-persistedstate以及踩坑記錄
這篇文章主要介紹了Nuxt引入vue-persistedstate以及踩坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10Vuex利用state保存新聞數(shù)據(jù)實(shí)例
本篇文章主要介紹了Vuex利用state保存新聞數(shù)據(jù)實(shí)例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06vscode中的vue項(xiàng)目報(bào)錯(cuò)Property ‘xxx‘ does not exist on type ‘Combin
這篇文章主要介紹了vscode中的vue項(xiàng)目報(bào)錯(cuò)Property ‘xxx‘ does not exist on type ‘CombinedVueInstance<{ readyOnly...Vetur(2339),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09使用vue-resource進(jìn)行數(shù)據(jù)交互的實(shí)例
下面小編就為大家?guī)?lái)一篇使用vue-resource進(jìn)行數(shù)據(jù)交互的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09Nuxt.js實(shí)現(xiàn)一個(gè)SSR的前端博客的示例代碼
這篇文章主要介紹了Nuxt.js實(shí)現(xiàn)一個(gè)SSR的前端博客的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09vue跨窗口通信之新窗口調(diào)用父窗口方法實(shí)例
由于開(kāi)發(fā)需要,我需要在登錄成功請(qǐng)求成功后,調(diào)用父窗口的一個(gè)點(diǎn)擊事件方法,這篇文章主要給大家介紹了關(guān)于vue跨窗口通信之新窗口調(diào)用父窗口的相關(guān)資料,需要的朋友可以參考下2023-01-01vue如何監(jiān)聽(tīng)頁(yè)面的滾動(dòng)的開(kāi)始和結(jié)束
這篇文章主要介紹了vue如何監(jiān)聽(tīng)頁(yè)面的滾動(dòng)的開(kāi)始和結(jié)束,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07vue使用element-ui按需引入時(shí)踩過(guò)的那些坑
Element-UI是基于vue實(shí)現(xiàn)的一套不依賴(lài)業(yè)務(wù)的UI組件庫(kù),提供了豐富的PC端組件,減少用戶(hù)對(duì)常用組件的封裝,降低了開(kāi)發(fā)的難易程度,下面這篇文章主要給大家介紹了關(guān)于vue使用element-ui按需引入時(shí)踩過(guò)的那些坑,需要的朋友可以參考下2022-05-05