uniapp微信小程序巧用跳转封装鉴权路由

1.这是封装的跳转方法:

javascript 复制代码
import store from "../stores/store";

function Router(type, url, params) {
  const NoLoginPage = [
    。。。。。
  ];
  var queryString = Object.keys(params)
    .map((key) => `${key}=${params[key]}`)
    .join("&");

  if (!NoLoginPage.includes(url)) {
    if (!store.state.user_store.token) {
      store.commit("user_store/setPath", url);
      store.commit("user_store/setParams", params);
      uni.navigateTo({
        url: "/pages/login/login",
      });
      return;
    }
  }
  switch (type) {
    case "switchTab":
      if (queryString) {
        uni.switchTab({
          url: `${url}?${queryString}`,
        });
      } else {
        uni.switchTab({
          url: url,
        });
      }
      break;
    case "navigateTo":
      if (queryString) {
        uni.navigateTo({
          url: `${url}?${queryString}`,
        });
      } else {
        uni.navigateTo({
          url: url,
        });
      }
      break;
    case "redirectTo":
      if (queryString) {
        uni.redirectTo({
          url: `${url}?${queryString}`,
        });
      } else {
        uni.redirectTo({
          url: url,
        });
      }
      break;
    case "switchTab":
      if (queryString) {
        uni.switchTab({
          url: `${url}?${queryString}`,
        });
      } else {
        uni.switchTab({
          url: url,
        });
      }
      break;
  }
}
export default Router;

2.引入main.js函数进行使用

javascript 复制代码
import Router from "./router/routerLogin";
Vue.prototype.$Router = Router;

3.组件中使用

javascript 复制代码
this.$Router(
        "navigateTo",
        "/page_my/。。。。。",
        ""
      );

4.非常完美,完结撒花

相关推荐
镭封11 小时前
自媒体内容生产怎么提速?文案整理、配音与剪辑流程
人工智能·小程序·音视频·语音识别·媒体
anyup11 小时前
uView Pro X 1.0.0 发布:全面支持 uni-app x 蒸汽模式,80+ 组件
前端·uni-app·ai编程
科威网络12 小时前
小程序开发性能优化:分包、预加载与启动时间
性能优化·微信小程序·小程序
zhongben123_15 小时前
从零开发一个打车APP:技术选型、系统架构与成本评估指南
大数据·运维·ios·系统架构·uni-app·web app
派小心.18 小时前
App数据统计平台怎么选?从SDK接入到日活留存看板的技术实现
数据库·人工智能·小程序
互联网+人工智能观察19 小时前
微信小程序私有化定制、源码交付方案选型|SaaS / 模板二开 / 定制方案技术对比
微信小程序·小程序
微三云 - 廖会灵 (私域系统开发)19 小时前
小程序首屏从 3.2s 压到 1.1s:我们在这个订货商城项目上做的 7 个改动与 3 个踩坑
小程序
微擎应用市场20 小时前
二手闲置交易小程序管理系统
小程序
小小王app小程序开发20 小时前
潮玩抽赏小程序玩法开发分析
小程序
干啥啥不行,bug第一名20 小时前
小程序里不要用 requestAnimationFrame
小程序