欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue Element-ui input 遠程搜索與修改建議顯示模版的示例代碼

 更新時間:2017年10月19日 16:58:15   作者:流氓不解釋  
本文分為html,js和css代碼給大家詳細介紹了vue Element-ui input 遠程搜索與修改建議顯示模版功能,感興趣的朋友一起看看吧

html:

<template>
 <el-autocomplete popper-class="my-autocomplete" custom-item="my-remote" v-model="state" :fetch-suggestions="querySearch" placeholder="默認空" icon="close" :on-icon-click="handleIconClick">
 </el-autocomplete>
</template>

js:

<script>
import Vue from 'vue'
Vue.component('my-remote', {
 functional: true,
 render: function(h, ctx) {
  var item = ctx.props.item;
  let str = h('li', ctx.data, [
   h('div', { attrs: { class: 'name' } }, [item.value]),
   h('span', { attrs: { class: 'addr' } }, [item.address])
  ]);
  if (item.str) { // 根據(jù)參數(shù)不同 修改原模版結(jié)構(gòu)
   str = h('center', { attrs: { class: 'ems' } }, [item.str])
  }
  return str
 },
 props: {
  item: { type: Object, required: true }
 }
});
export default {
 data() {
  return {
   restaurants: [],
   state: '',
   timeout: null,
   _that: {} // 記錄this,用來發(fā)起http請求
  };
 },
 methods: {
  querySearch(queryString, cb) {
   let restaurants = this.restaurants;
   if (restaurants.length > 0) { // 如果參數(shù)都沒變化,則使用緩存數(shù)據(jù),避免請求沉積
    let results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
    cb(results);
   } else {
    const qtype = ‘參數(shù)';
    this._that.$http('/inner', { qtype: qtype })
     .then((res) => {
       restaurants = this.loadAll(res);
       this.restaurants = restaurants;
       let results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
       cb(results);
     })
     .catch((err) => {
      restaurants = this.loadAll();
      let results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
      cb(results);
     });
   }
  },
  createFilter(queryString) {
   return (restaurant) => {
    if (restaurant.str) return false;
    return (restaurant.value.indexOf(queryString.toLowerCase()) === 0);
   };
  },
  loadAll(data) {
   let serier = [];
   if (data) {
    for (let i = 0, l = data.length; i < l; i++) {
     let a = data[i];
     let b = '';
     if (typeof a === "object") {
      b = a[1];
      a = a[0];
     }
     serier.push({ "value": a, "address": b })
    }
   } else { // 如果沒有請求到數(shù)據(jù),則顯示暫無數(shù)據(jù)!
    serier.push({ "str": '暫無數(shù)據(jù)' })
   }
   return serier;
  },
  handleIconClick(ev) {
   this.state = "";
  }
 },
 mounted() {
  this._that = this;
 }
}
</script> 

css:

<style lang="scss">
.my-autocomplete {
 li {
  line-height: normal !important;
  padding: 7px !important;
 
  .name {
   text-overflow: ellipsis;
   overflow: hidden;
  }
  .addr {
   font-size: 12px;
   color: #b4b4b4;
  }
 
  .highlighted .addr {
   color: #ddd;
  }
 }
 .ems {
  font-size: 12px;
  color: #b4b4b4;
 }
}
</style> 

總結(jié)

以上所述是小編給大家介紹的vue Element-ui input 遠程搜索與修改建議顯示模版的示例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 手把手教你使用寶塔部署Vue項目

    手把手教你使用寶塔部署Vue項目

    這篇文章主要給大家介紹了關(guān)于如何使用寶塔部署Vue項目的相關(guān)資料,寶塔面板提供了非常方便的方式來部署 Vue 項目,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-08-08
  • vue-cli項目使用vue-picture-preview圖片預覽組件方式

    vue-cli項目使用vue-picture-preview圖片預覽組件方式

    這篇文章主要介紹了vue-cli項目使用vue-picture-preview圖片預覽組件方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Vue路由vue-router用法講解

    Vue路由vue-router用法講解

    這篇文章介紹了Vue路由vue-router的用法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • vue中的計算屬性的使用和vue實例的方法示例

    vue中的計算屬性的使用和vue實例的方法示例

    本篇文章主要介紹了vue計算屬性的使用和vue實例的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • vue登錄路由權(quán)限管理的項目實踐

    vue登錄路由權(quán)限管理的項目實踐

    在開發(fā)Web應用程序時,常常需要進行登錄驗證和權(quán)限管理,本文主要介紹了vue登錄路由權(quán)限管理的項目實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • Vue進度條progressbar組件功能

    Vue進度條progressbar組件功能

    progressbar組件在一個可以直接運行的npm包,通過Yeoman進行構(gòu)建,再通過Gulp+Webpack構(gòu)建工具。這篇文章給大家介紹了Vue進度條progressbar組件
    2018-04-04
  • 關(guān)于Vue項目跨平臺運行問題的解決方法

    關(guān)于Vue項目跨平臺運行問題的解決方法

    這篇文章主要介紹了關(guān)于Vue項目跨平臺運行問題的解決方法,特別記錄一下踩的坑,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • echarts設(shè)置tootip輪播切換展示(vue3搭配vue-echarts粘貼即用)

    echarts設(shè)置tootip輪播切換展示(vue3搭配vue-echarts粘貼即用)

    這篇文章主要為大家介紹了echarts設(shè)置tootip輪播切換展示效果,vue3搭配vue-echarts粘貼即用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2023-10-10
  • 詳解在vue3中使用jsx的配置以及一些小問題

    詳解在vue3中使用jsx的配置以及一些小問題

    本文主要介紹了在vue3中使用jsx的配置以及一些小問題,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue 自動生成swagger接口請求文件的方法

    vue 自動生成swagger接口請求文件的方法

    這篇文章主要介紹了vue 自動生成swagger接口請求文件的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01

最新評論