vue 实现搜索历史_vue项目搜索历史功能的实现

本文介绍了在Vue项目中如何实现搜索历史功能,包括在Vuex中存储搜索历史,使用localstorage持久化数据,实现历史记录的添加、删除、显示以及清空功能。通过组件化的方式,展示了搜索历史组件的实现细节,包括监听事件、触发父组件操作等。
摘要由CSDN通过智能技术生成

播放器项目中歌曲搜素页面的

首先需要在state定义搜索历史,在其中保存搜索历史

state.js:

// 搜索历史:

searchHistory: []

mutations中新增改变搜索历史的方法

mutations.js:

SET_SEARCH_HISTORY(state, history) {

state.searchHistory = history

}

在actions中需要提交一个状态改变history,由于需要存储到vuex中

export const saveSearchHistory = function ({

commit

}, query) {

commit('SET_SEARCH_HISTORY', saveSearch(query))

}

在utils中新建一个cache.js,用来存储localstroage.js,首先安装good-stroage作为存储缓存的依赖

cache.js:

import storage from 'good-storage';

定义一个key代表存储搜索历史:

const SEARCH_KEY = "__search__"

// 只缓存十五条数据

const SEARCH_MAX_LEN = 15

实现逻辑:

// arr总数组,val插入的数组,maxlen总条数

function insertArray(arr, val, maxLen) {

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值