From 517b4a398d9ca06788366f2c4b94d5d8831af5fc Mon Sep 17 00:00:00 2001
From: 李凌 <344137771@qq.com>
Date: Mon, 22 Sep 2025 18:29:30 +0800
Subject: [PATCH] 1

---
 src/views/quotes/List.vue |   29 +++++++++++++++++++++++++++--
 1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/src/views/quotes/List.vue b/src/views/quotes/List.vue
index 55bed5d..2e8010a 100644
--- a/src/views/quotes/List.vue
+++ b/src/views/quotes/List.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="quotes-list pt-5 pb-60 pl-5 pr-5" id="cryptos">
 
-    <Head></Head>
+    <Head @search="onSearch"></Head>
     <list-quatation :listData="qList" :tabActive="2" />
   </div>
 </template>
@@ -18,6 +18,8 @@
 
 //#region 行情数据----------------------------------------
 let qList = ref([])
+let qListCope = ref([]) // 备份数据
+let key = ref('') // 搜索关键词
 let timeout = ref(null)
 const coinArr = computed(() => store.getters['home/coinArr']);
 
@@ -28,7 +30,16 @@
   if (!(list instanceof Array)) {
     return
   }
-  qList.value = list;
+
+  // 通过关键字进行筛选
+  if (key.value) {
+    qList.value = list.filter(item => {
+      return item.symbol_data.toLowerCase().includes(key.value.toLowerCase()) || item.name.toLowerCase().includes(key.value.toLowerCase())
+    })
+  } else {
+    qList.value = list
+  }
+  qListCope.value = list; // 备份数据
 
   if (timeout.value) {
     clearTimeout(timeout.value)
@@ -45,6 +56,20 @@
   }
 })
 //#endregion----------------------------------------------
+
+// 搜索
+const onSearch = (val) => {
+  key.value = val
+
+  if (!val) {
+    qList.value = qListCope.value
+    return
+  }
+  let newList = qListCope.value.filter(item => {
+    return item.symbol_data.toLowerCase().includes(val.toLowerCase()) || item.name.toLowerCase().includes(val.toLowerCase())
+  })
+  qList.value = newList
+}
 </script>
 <style lang="scss" scoped>
 .quotes-list {

--
Gitblit v1.9.3