最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue2+ElementUI利用計(jì)算屬性實(shí)現(xiàn)搜索框功能

 更新時間:2024年11月13日 14:40:38   作者:邊洛洛  
這篇文章主要為大家詳細(xì)介紹了Vue2和ElementUI如何利用計(jì)算屬性實(shí)現(xiàn)搜索框功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下

前言

本文代碼使用vue2+element UI。

輸入框搜索的功能,可以在前端通過計(jì)算屬性過濾實(shí)現(xiàn),也可以調(diào)用后端寫好的接口。本文介紹的是通過計(jì)算屬性對表格數(shù)據(jù)實(shí)時過濾,后附完整代碼,代碼中提供的是死數(shù)據(jù),可供學(xué)習(xí)使用。

效果展示

完整代碼

<template>
  <div class="container">
    <h1 class="page-title">興奮劑系統(tǒng)數(shù)據(jù)展示</h1>
 
    <!-- 搜索框 -->
    <el-input
      v-model="searchTerm"
      placeholder="搜索單位、姓名或身份證號"
      prefix-icon="el-icon-search"
      clearable
      class="search-input"
    >
    </el-input>
 
    <!-- 數(shù)據(jù)表格 -->
    <el-table :data="filteredData" border="">
      <el-table-column prop="unit" label="單位" width="150"></el-table-column>
      <el-table-column prop="name" label="姓名" width="120"></el-table-column>
      <el-table-column prop="idNumber" label="身份證號"></el-table-column>
    </el-table>
 
    <!-- 沒有數(shù)據(jù)時顯示 -->
    <div v-if="filteredData.length === 0" class="empty-message">
      沒有找到匹配的結(jié)果
    </div>
  </div>
</template>
 
<script>
export default {
  data() {
    return {
      searchTerm: "",
      mockImportedData: [
        { unit: "北京隊(duì)", name: "張三", idNumber: "110101199001011234" },
        { unit: "上海隊(duì)", name: "李四", idNumber: "310101199203033456" },
        { unit: "廣州隊(duì)", name: "王五", idNumber: "440101199405055678" },
        { unit: "深圳隊(duì)", name: "趙六", idNumber: "440301199607077890" },
        { unit: "北京隊(duì)", name: "劉七", idNumber: "110101199809099012" },
      ],
    };
  },
  computed: {
    filteredData() {
      const lowercasedSearch = this.searchTerm.toLowerCase();
      return this.mockImportedData.filter(
        (item) =>
          item.unit.toLowerCase().includes(lowercasedSearch) ||
          item.name.toLowerCase().includes(lowercasedSearch) ||
          item.idNumber.includes(this.searchTerm)
      );
    },
  },
};
</script>
 
<style lang="scss" scoped>
/* 容器整體樣式 */
.container {
  padding: 15px;
 
  .page-title {
    font-size: 24px;
    font-weight: bold;
    margin: 5px 0;
  }
  .search-input {
    padding: 10px 0;
    margin-bottom: 10px;
  }
 
  /* 表格容器樣式 */
  .table-wrapper {
    margin-top: 20px;
  }
 
  /* 空結(jié)果提示 */
  .empty-message {
    text-align: center;
    margin-top: 20px;
    color: #a0aec0;
  }
}
</style>

知識點(diǎn):

1. 數(shù)組的filter()方法:

上述代碼中filter() 方法會遍歷 mockImportedData 中的每個數(shù)據(jù)項(xiàng),對每一項(xiàng)執(zhí)行回調(diào)函數(shù)進(jìn)行判斷,滿足以下任意一個條件,才會保留在數(shù)組中。

2.空字符串匹配邏輯

在 JavaScript 中,任何字符串調(diào)用 .includes("") 都會返回 true。

這意味著空字符串會被視為“包含在任何字符串中”。

所以①當(dāng)用戶不輸入任何數(shù)據(jù),即searchTerm為空時,filter()返回原始的mockImportedData數(shù)組,即不做任何篩選,返回全部數(shù)據(jù);

②當(dāng)用戶輸入數(shù)據(jù)時,則進(jìn)行匹配過濾。

到此這篇關(guān)于Vue2+ElementUI利用計(jì)算屬性實(shí)現(xiàn)搜索框功能的文章就介紹到這了,更多相關(guān)Vue2搜索框功能內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue父子組件通訊的所有方法小結(jié)

    vue父子組件通訊的所有方法小結(jié)

    本文將介紹父組件與子組件之間傳遞數(shù)據(jù)的四種方法,以一個簡單的小demo為例,通過實(shí)例全方位解析和代碼演示,便于大家理解,需要的朋友可以參考下
    2024-07-07
  • vue中實(shí)現(xiàn)圖片和文件上傳的示例代碼

    vue中實(shí)現(xiàn)圖片和文件上傳的示例代碼

    下面小編就為大家分享一篇在vue中實(shí)現(xiàn)圖片和文件上傳的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • vue實(shí)現(xiàn)滑動驗(yàn)證條

    vue實(shí)現(xiàn)滑動驗(yàn)證條

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)滑動驗(yàn)證條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue中正確使用jsx語法的姿勢分享

    vue中正確使用jsx語法的姿勢分享

    這篇文章主要給大家介紹了關(guān)于vue中正確使用jsx的相關(guān)資料,JSX就是Javascript和XML結(jié)合的一種格式,React發(fā)明了JSX,利用HTML語法來創(chuàng)建虛擬DOM,當(dāng)遇到<,JSX就當(dāng)HTML解析,遇到{就當(dāng)JavaScript解析,需要的朋友可以參考下
    2021-07-07
  • 詳解vue-cli腳手架中webpack配置方法

    詳解vue-cli腳手架中webpack配置方法

    這篇文章主要介紹了詳解vue-cli腳手架中webpack配置方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • 使用Vue.js和Element-UI做一個簡單登錄頁面的實(shí)例

    使用Vue.js和Element-UI做一個簡單登錄頁面的實(shí)例

    下面小編就為大家分享一篇使用Vue.js和Element-UI做一個簡單登錄頁面的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • Vue+Openlayer實(shí)現(xiàn)圖形的拖動和旋轉(zhuǎn)變形效果

    Vue+Openlayer實(shí)現(xiàn)圖形的拖動和旋轉(zhuǎn)變形效果

    Openlayer具有自己的擴(kuò)展插件ol-ext,可以用來實(shí)現(xiàn)圖形的拖拽、旋轉(zhuǎn)、縮放、拉伸、移動等操作,本文將主要介紹通過Openlayer實(shí)現(xiàn)圖形的拖動和旋轉(zhuǎn),需要的同學(xué)可以學(xué)習(xí)一下
    2021-11-11
  • react router零基礎(chǔ)使用教程

    react router零基礎(chǔ)使用教程

    React-Router 路由庫,是官方維護(hù)的路由庫,事實(shí)上也是唯一可選的路由庫。它通過管理 URL,實(shí)現(xiàn)組件的切換和狀態(tài)的變化,開發(fā)復(fù)雜的應(yīng)用幾乎肯定會用到
    2022-09-09
  • 在vue中給后臺接口傳的值為數(shù)組的格式代碼

    在vue中給后臺接口傳的值為數(shù)組的格式代碼

    這篇文章主要介紹了在vue中給后臺接口傳的值為數(shù)組的格式代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Node.js+Vue腳手架環(huán)境搭建的方法步驟

    Node.js+Vue腳手架環(huán)境搭建的方法步驟

    這篇文章主要介紹了Node.js+Vue腳手架環(huán)境搭建的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2020-03-03

最新評論

潼南县| 德保县| 边坝县| 安多县| 乌苏市| 晋中市| 饶平县| 元氏县| 通江县| 新丰县| 新巴尔虎右旗| 南通市| 盐山县| 旬邑县| 洮南市| 大足县| 乳源| 昌宁县| 定南县| 钟山县| 望谟县| 天津市| 汾阳市| 曲阜市| 美姑县| 华蓥市| 呼图壁县| 江达县| 晴隆县| 富川| 申扎县| 隆林| 时尚| 昆明市| 普定县| 青川县| 西昌市| 息烽县| 舒城县| 蓝山县| 郑州市|