参考文章:https://www.cnblogs.com/purple-windbells/p/11887162.html
uniapp使用uni.navigateTo进行跳转,但是跳转无反应,pages.json的pages配置里也有链接,链接页面也是存在的。参考下面详情:
uni.navigateTo跳转示例:
<button class="btn" @click="gotoTargetPage">首页</button>
<script>
export default {
methods: {
gotoTargetPage() {
console.log('click xxx');
uni.navigateTo({
url: '/pages/index/index'
});
}
}
}
</script>
注意如果当pages.json的tabBar有包含需要跳转的页面pages/index/index
"tabBar":{
"backgroundColor": "#fff",
"color": "#aaa",
"selectedColor": "#000",
"list": [
{
"pagePath": "pages/index/index",
"iconPath": "static/images/tabBar/111.png",
"selectedIconPath": "static/images/tabBar/1111.png",
"text": "首页"
},
{
"pagePath": "pages/video/index",
"iconPath": "static/images/tabBar/222.png",
"selectedIconPath": "static/images/tabBar/2222.png",
"text": "视频"
},
{
"pagePath": "pages/news/index",
"iconPath": "static/images/tabBar/333.png",
"selectedIconPath": "static/images/tabBar/3333.png",
"text": "资讯"
},
{
"pagePath": "pages/home/index",
"iconPath": "static/images/tabBar/444.png",
"selectedIconPath": "static/images/tabBar/4444.png",
"text": "我的"
}
]
},
则用uni.navigateTo是无效的,需要改用uni.switchTab
<button class="btn" @click="gotoTargetPage">首页</button>
<script>
export default {
methods: {
gotoTargetPage() {
console.log('click xxx');
uni.switchTab({
url:'/pages/index/index',
success:(res)=> {
let page = getCurrentPages().pop(); //跳转页面成功之后
if (!page) return;
page.loadData(); //如果页面存在,则重新刷新页面
}
});
}
}
}
</script>