vue中el-autocomplete與el-select的異同
前言
最近項(xiàng)目里面需要使用到下拉框的遠(yuǎn)程搜索,我這邊使用的是el-select
,其實(shí)查看文檔我們可以得知,還可以使用el-autocomplete
來實(shí)現(xiàn)遠(yuǎn)程搜索。
那么它們具體有何異同呢?今天我們來看看。
異同
el-autocomplete
el-autocomplete是使用fetch-suggestions
方法實(shí)現(xiàn),當(dāng)輸入的時(shí)候,會(huì)調(diào)用我們提供的方法,傳入的參數(shù)是輸入的value,以及callback。
我們要把請(qǐng)求到的下拉列表通過callback返回(列表的每一項(xiàng)以key為value
的形式傳,也可以通過value-key
換成其它key)。
代碼如下:
<el-autocomplete v-model="value" :fetch-suggestions="querySearchAsync" placeholder="請(qǐng)輸入內(nèi)容" ></el-autocomplete> export default { data () { return { value: '' } }, methods: { querySearchAsync (queryString, cb) { setTimeout(() => { cb([{value: '答案cp3'}]) }, 200) } }
可以看到el-autocomplete實(shí)時(shí)輸入的時(shí)候,value也是實(shí)時(shí)變化的,并且,你選中選項(xiàng),再次拉起選項(xiàng)的時(shí)候,不會(huì)有選中的效果。
所以el-autocomplete可以理解為輸入建議的組件。
el-select
el-select的遠(yuǎn)程搜索是通過remote-method
來實(shí)現(xiàn)。當(dāng)你輸入的時(shí)候,會(huì)調(diào)用remote-method
對(duì)應(yīng)的方法來實(shí)現(xiàn)。參數(shù)是傳入當(dāng)前輸入的value值。
然后我們請(qǐng)求后,把el-select的option賦值就可以了。
代碼如下:
<el-select v-model="value" filterable remote reserve-keyword placeholder="請(qǐng)輸入關(guān)鍵詞" :remote-method="remoteMethod" :loading="reqLoading" > <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option> </el-select> export default { data () { return { value: '', reqLoading: false, options: [] } }, methods: { remoteMethod (query) { if (query !== '') { this.reqLoading = true setTimeout(() => { this.reqLoading = false this.options = [{label: '答案cp3',value: '答案cp3'}] }, 200) } else { this.options = [] } } }
el-select輸入的時(shí)候value不會(huì)實(shí)時(shí)變化,而是你要選擇下面的option才會(huì)變化。
然后它選中了,下次打開會(huì)有選中的效果。
總結(jié)
- el-autocomplete主要是針對(duì)輸入建議,value會(huì)實(shí)時(shí)刷新,選中不會(huì)有選中效果。
- el-select value不會(huì)實(shí)時(shí)刷新,選中才會(huì)更新value,并且選中會(huì)有選中效果。
到此這篇關(guān)于vue中el-autocomplete與el-select的異同的文章就介紹到這了,更多相關(guān)el-autocomplete與el-select內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue2.0 axios前后端數(shù)據(jù)處理實(shí)例代碼
本篇文章主要介紹了vue2.0 axios前后端數(shù)據(jù)處理實(shí)例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06Vue觸發(fā)input選取文件點(diǎn)擊事件操作
這篇文章主要介紹了Vue觸發(fā)input選取文件點(diǎn)擊事件操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-08-08Vue實(shí)現(xiàn)戶籍管理系統(tǒng)戶籍信息的添加與刪除方式
這篇文章主要介紹了Vue實(shí)現(xiàn)戶籍管理系統(tǒng)戶籍信息的添加與刪除方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09vue proxy 的優(yōu)勢(shì)與使用場景實(shí)現(xiàn)
這篇文章主要介紹了vue proxy 的優(yōu)勢(shì)與使用場景實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06