内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

vue.js中過濾器怎么用

這篇文章給大家分享的是有關vue.js中過濾器怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)專注于解放企業(yè)網站建設,響應式網站,商城系統(tǒng)網站開發(fā)。解放網站建設公司,為解放等地區(qū)提供建站服務。全流程按需定制開發(fā),專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務

前言

大家再使用vue做項目時,查詢功能當然必不可少,這就得使用vue強大的filter啦。其實vue內置的兩個屬性filterBy和orderBy已經能滿足部分需求了,但是她更大的的魅力在于自定義filter(之后的文章中會分享),正好我最近做的項目中用到了這個。先給大家看下需求吧。如下圖,這是一個通訊錄頁面,當我們在搜索欄中輸入關鍵字時需要展示相應的員工,同時還得去掉A、B這樣的字母索引,并且輸入的關鍵字可以是中文也可以是拼音。

vue.js中過濾器怎么用   vue.js中過濾器怎么用

該頁面引入搜索欄組件search-bar以及聯(lián)系人組件user-list,這個搜索欄組件要做的事很簡單,因為我們查詢的這個參數(shù)是動態(tài)的,所以只需要在vue上掛載一個v-model即可,然后它相對于這個頁面來說是子組件,父子傳值就得用props,所以還要用props接收一下,簡單寫下該組件大家看明白意思即可。

// 組件search-bar
<input type="search" v-model="okr_owner"/>

props: {
 okr_owner: {
  type: String
 }
}
// 通訊錄頁面
<template>
 <search-bar :okr_owner.sync="key_word"></search-bar>
 <user-list :filter_key="key_word"></user-list>
</template>
// 組件 user-list
<li v-for="single_user in user_list.members | filterBy filter_key in 'user.u_name' 'okr_owner' | orderBy 'okr_owner'">
 props: {
 filter_flag: {
  type: Boolean
 },
 filter_key:{
  type: String
 }
}

然后我們需要在該頁面引入這個搜索欄子組件,這里我用到了sync,因為props只能父傳子,不能子傳父,但是我們這上面引用了兩個組件,就是說搜索欄組件中的data要拿到聯(lián)系人組件中來用,所以需要一個字段(key_word)將兩者溝通起來,當我們不寫sync時大家可以看到,父的確傳值給子組件了,但是子組件中的okr_owner變化之后并沒有傳給父組件中的key_word,這樣聯(lián)系人組件就接受不到數(shù)據源,所以我們需要給他加上sync(雙向綁定,父傳子和子傳父),聯(lián)系人組件中的filter才可以生效。

vue.js中過濾器怎么用

vue.js中過濾器怎么用

在user-list組件中我們需要遍歷聯(lián)系人列表,filter_key用來傳給該組件,和搜索欄組件一樣,也用props接收一下,并且在里面插入要過濾的內容,

filterBy是返回過濾后的數(shù)組,orderBy是排序,前者的使用方法是filterBy 一個key(字段),in xxx 就是指搜索字段,這里需要注意的是in后面跟的必須是obj里面的key,因為我們的需求是同時保證輸入漢字或者拼音都能查詢,所以in后面跟的是okr_owner和user.u_name(這是vue渲染的數(shù)據,我們展示該聯(lián)系人用的是里面的u_name,okr_owner則為拼音),下面附上數(shù)據結構。對于在搜索時如何去掉這些字母索引,我們只需要在通訊錄頁面中的<user-list>加入一個字段,然后使用watch來監(jiān)聽一下key_word即可。

vue.js中過濾器怎么用

感謝各位的閱讀!關于“vue.js中過濾器怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

當前標題:vue.js中過濾器怎么用
網站網址:http://www.rwnh.cn/article8/jsdiip.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、網站制作、虛擬主機網站改版、關鍵詞優(yōu)化、服務器托管

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
海门市| 乡宁县| 南川市| 伊宁市| 新野县| 达州市| 电白县| 贡嘎县| 平陆县| 兰考县| 克山县| 仙游县| 南康市| 阳东县| 达尔| 遂宁市| 双桥区| 泾阳县| 新田县| 北碚区| 高要市| 任丘市| 文山县| 当涂县| 普洱| 广宗县| 高淳县| 新绛县| 甘泉县| 渭源县| 富宁县| 安庆市| 安新县| 拜城县| 邻水| 长葛市| 信丰县| 旬阳县| 康乐县| 长宁区| 玉屏|