利用switch
封装Uniapp
中的跳转:
export function jump (url,type){ switch (type){ case 'navigate': //保留当前页面,跳转到应用内的某个页面 uni.navigateTo({ url: url }); break; case 'redirect': //关闭当前页面, 跳转到应用内的某个页面 uni.redirectTo({ url: url }); break; case 'reLaunch': //关闭所有页面, 打开到应用内的某个页面 uni.reLaunch({ url: url }); break; case 'switch': //跳转到 tabbar 页面 uni.switchTab({ url: url }); break; case 'web': uni.navigateTo({ //跳转外部链接 url: '/pages/web/index?link=' + encodeURIComponent(JSON.stringify(url)) }); break; default: //默认方法 uni.navigateTo({ url: url }); break; } }
在 main.js 中进行全局引入:
import {jump} from '@/tools/utils/index.js' // 引入上面 JS 文件的根目录 Vue.prototype.$jump = jump
最后在页面中调用即可:
this.$jump(this.url); //this.url 为需要跳转到的页面路径,跳转方法默认为 navigateTo this.$jump(this.url, 'redirect'); //关闭当前页面, 跳转到应用内的某个页面 this.$jump(this.url, 'reLaunch'); //关闭所有页面, 打开到应用内的某个页面 this.$jump(this.url, 'switch'); //跳转到 tabbar 页面 this.$jump(this.url, 'web'); //跳转外部链接