Vue 返回上一页,记住上一页的数据

摘要:
解决方案=============1====3====2===:====0.======{/Search path:“Search”,name:“serch”,component:Search,meta:{keepAlive:true,isUseCache:false}===_===exportdefault{beforeRouteLeave{//当跳转到搜索页时,如果{to.meta.isUseCache=true;},则搜索是搜索页的名称next();},}=====搜索页面=========1====3====2===˃===exportdefault{data(){return{good title:“”,good:,所以默认值是使用if(!

问题:在搜索页面,搜索出饼干商品,点击某饼干商品进入商品详情页,再从商品详情页返回到搜索页面后,

搜索页面应该依旧保留之前的搜索结果。

Vue 返回上一页,记住上一页的数据第1张

解决方式

==============搜索页面路由设置===================================
{
// 搜索
path: 'search',
name: 'search',
component: Search,
meta:{
keepAlive: true,
isUseCache:false
}
}
========商品详情页JS=========================================
export default {
   beforeRouteLeave (to, from, next) {
        //跳转到搜索页面时,search为搜索页面名称
            if (to.name == 'search') {
                to.meta.isUseCache = true;
            }
            next();
        },
}


========搜索页面===========================================
<div   v-for="good in goods">
<van-card
@click="goToDetail(good.seriesId)"//跳转到详情页面
:price="good.price"
:desc="`${good.kwname} ${good.pricetag}`"
:title="good.seriesname"
:thumb ="good.seriesimg"
/>
</div>

export default {
data(){
return{
GoodTitle:"",
good:[]
}
}, activated() { // isUseCache为false时才重新刷新获取数据 // 因为对goods使用keep-alive来缓存组件,所以默认是会使用缓存数据的 if(!this.$route.meta.isUseCache){//false this.goods = []; // 清空原有数据 this.GoodsTitle = ""; this.onLoad(); // 这是我们获取数据的函数 this.$route.meta.isUseCache = false; } else { this.$route.meta.isUseCache = false; } },
methods:{
     //获取商品详情
goToDetail(sid) {
//alert("aaa");
this.$router.push({
name: "goodsDetail",
params: {
id: sid
}
});
}
    } 

}

免责声明:文章转载自《Vue 返回上一页,记住上一页的数据》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Vue3 中插槽(slot)的用法Hive 时间函数下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

原生js和vue之间的数据通讯--EventEmitter

有个小项目在原来原生的框架编写,但是不想写原生,就引入了vue 然后有个需求要和原生的js进行交互通讯,于是就可以用node.js EventEmitter 具体做法: 先引入文件<script src="http://t.zoukankan.com/js/eventEmitter.js"></script>, 初始化, 然后在vu...

[记录]解决vue项目当直接通过url访问中间页时nginx返回404的问题

    应用为VUE单页应用,路由模式为history,web服务器为nginx,正常情况下如果直接通过url访问一个中间页(不是index.html)时,会看到nginx返回的404错误,这个问题目前我只能通过修改nginx站点配置文件来实现。 具体代码(只看红色加粗的部分就行): server { listen 80; serv...

Vue中table表头合并的用法

<div class="panel-container"> <div> <table class="table-head"width="80%"> <thead> <tr> &l...

Vue 折叠面板Collapse在标题上添加组件后,阻止面板冒泡的用法

iView组件中,折叠面板Collapse点击面板标题部分,会出现面板收起或展开的效果。那么在面板标题后面再添加下拉框之类的组件时,会出现跟面板点击一样的效果,这时候就需要阻止冒泡的用法了。具体代码: <!--折叠面板组件on-change事件即可获得当前展开面板的值,value即为默认面板的值,可绑定变量值,accordion选项即一次只能展开一个...

开发富文本编辑器的一些经验教训

此文已由作者刘诗川授权网易云社区发布。 欢迎访问网易云社区,了解更多网易技术产品运营经验。 最近我们的产品有一个需求是要在PC端做一个面向用户的书评编辑器,让用户和编辑在蜗牛读书上能方便快捷的编辑和产出一些优质的文章,它的主要难点就是富文本编辑器部分。 这虽然是个业务需求,但是做业务的同时也要兼顾技术,所以在跟需求商量好不支持IE8之后,决定采用Vue来作...

Vue 表情包输入组件的实现代码

Emotion 一个用于vue的表情输入组件https://gitee.com/jiangliyue/vue_expression_input_module index是使用示例,emotion是组件代码(这里用的是微信表情包的地址,大家可根据需要修改) 下载安装启动项目查看效果 npm install npm run dev Emotion文件夹下...