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)文章
vite+vue3項(xiàng)目啟動(dòng)報(bào)錯(cuò)Unexpected?“%“問(wèn)題及解決
這篇文章主要介紹了vite+vue3項(xiàng)目啟動(dòng)報(bào)錯(cuò)Unexpected?“%“問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03
vue-router 按需加載 component: () => import() 報(bào)錯(cuò)的解決
這篇文章主要介紹了vue-router 按需加載 component: () => import() 報(bào)錯(cuò)的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09
詳解如何在vue項(xiàng)目中引入elementUI組件
這篇文章主要介紹了詳解如何在vue項(xiàng)目中引入elementUI組件,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-02
Element?el-tag標(biāo)簽圖文實(shí)例詳解
現(xiàn)在好多應(yīng)用場(chǎng)景里會(huì)有一些需要給文章打標(biāo)簽等類(lèi)似的操作,下面這篇文章主要給大家介紹了關(guān)于Element?el-tag標(biāo)簽的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04
在vue中使用express-mock搭建mock服務(wù)的方法
這篇文章主要介紹了在vue中使用express-mock搭建mock服務(wù)的方法,文中給大家提到了在vue-test-utils 中 mock 全局對(duì)象的相關(guān)知識(shí) ,需要的朋友可以參考下2018-11-11
使用Vue開(kāi)發(fā)動(dòng)態(tài)刷新Echarts組件的教程詳解
這篇文章主要介紹了使用Vue開(kāi)發(fā)動(dòng)態(tài)刷新Echarts組件的教程詳解,需要的朋友可以參考下2018-03-03
Vue.js實(shí)現(xiàn)無(wú)限加載與分頁(yè)功能開(kāi)發(fā)
這篇文章主要為大家詳細(xì)介紹了Vue.js實(shí)現(xiàn)無(wú)限加載與分頁(yè)功能開(kāi)發(fā)實(shí)踐,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11

