mirror of
https://github.com/ZiuChen/ClipboardManager.git
synced 2025-06-16 04:46:55 +08:00
feat: #3 改善了内容检索算法 搜索时不再区分大小写
This commit is contained in:
parent
9d8d34ea4b
commit
1b0aa578c5
@ -88,12 +88,6 @@ class DB {
|
|||||||
this.updateDataBase()
|
this.updateDataBase()
|
||||||
this.updateDataBaseLocal()
|
this.updateDataBaseLocal()
|
||||||
}
|
}
|
||||||
filterDataBaseViaData(key) {
|
|
||||||
// 过滤展示数据
|
|
||||||
const filterValue = key.toLowerCase()
|
|
||||||
const textItems = this.dataBase.data.filter((item) => item.type === 'text')
|
|
||||||
return textItems.filter((item) => item.data.toLowerCase().indexOf(filterValue) !== -1)
|
|
||||||
}
|
|
||||||
filterDataBaseViaId(id) {
|
filterDataBaseViaId(id) {
|
||||||
return this.dataBase.data.filter((item) => item.id === id)
|
return this.dataBase.data.filter((item) => item.id === id)
|
||||||
}
|
}
|
||||||
|
@ -32,30 +32,16 @@ const showList = ref([]) // 展示的数据
|
|||||||
|
|
||||||
const updateShowList = (type) => {
|
const updateShowList = (type) => {
|
||||||
// 更新显示列表
|
// 更新显示列表
|
||||||
if (type === 'all') {
|
showList.value = list.value
|
||||||
if (filterText.value) {
|
.filter((item) => (type === 'all' ? item : item.type === type)) // 是 all则返回所有 否则按照 type返回
|
||||||
// 有过滤词 则过滤掉图片
|
.filter((item) => (filterText.value ? item.type !== 'image' : item)) // 有过滤词 排除掉图片 DataURL
|
||||||
showList.value = list.value
|
.filter(
|
||||||
.filter((item) => item.type !== 'image')
|
(item) =>
|
||||||
.filter((item) => item.data.indexOf(filterText.value) !== -1)
|
filterText.value
|
||||||
.slice(0, GAP)
|
? item.data.toLowerCase().indexOf(filterText.value.toLowerCase()) !== -1 // 有过滤词 不区分大小写检索
|
||||||
} else {
|
: item // 无过滤词 返回全部
|
||||||
// 无过滤词 直接更新
|
)
|
||||||
showList.value = list.value
|
.slice(0, GAP) // 重新切分懒加载列表
|
||||||
.filter((item) => item.data.indexOf(filterText.value) !== -1)
|
|
||||||
.slice(0, GAP)
|
|
||||||
}
|
|
||||||
} else if (type === 'image') {
|
|
||||||
// 排除掉对图片 DataURL的筛选
|
|
||||||
showList.value = list.value.filter((item) => item.type === type).slice(0, GAP)
|
|
||||||
} else {
|
|
||||||
// `file`类型 在stringify的data里搜
|
|
||||||
// `text`类型 在data里搜
|
|
||||||
showList.value = list.value
|
|
||||||
.filter((item) => item.type === type)
|
|
||||||
.filter((item) => item.data.indexOf(filterText.value) !== -1)
|
|
||||||
.slice(0, GAP)
|
|
||||||
}
|
|
||||||
window.toTop()
|
window.toTop()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user