==============搜索页面路由设置===================================
{
// 搜索
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();
},
}
========搜索页面===========================================
@click="goToDetail(good.seriesId)"//跳转到详情页面
:price="good.price"
:desc="`${good.kwname} ${good.pricetag}`"
:title="good.seriesname"
:thumb ="good.seriesimg"
class="goods-card" />
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
}
});
}
}
}