跳转到tabBar页面时是不能传参的但是实际开发中需要在跳转tabBar页面时进行传参,这是可以将参数传入本地缓存来实现传参。H5的本地缓存是localStorage, uni-app的本地缓存是uni.setStorageSync。
代码如下:
<template>
<div>
<div class="shop-list" @click="goPage('/pages/index/index','1')">北京</div>
<div class="shop-list" @click="goPage('/pages/index/index','2')">上海</div>
<div class="shop-list" @click="goPage('/pages/index/index','3')">山西</div>
</div>
</template>
<script>
export default{
name: "shop",
methods:{
goPage(url,id){
// 将id传入本地缓存
uni.setStorageSync("branch_shop_id",id);
// 跳转到tabBar页面
uni.switchTab({
url: url
})
}
}
}
</script>
uni.setStorageSync()方法的第一个参数是属性,第二个参数是值,与H5的localStorage使用方式是一样的
在pages/index/index.vue文件中接收参数,代码如下:
onShow(){
// 获取 branch_shop_id的值
let branchShopId = uni.getStorageSync("branch_shop_id");
console.log(branchShopId);
}