hhyang
hhyang
  • 发布:2020-11-04 19:05
  • 更新:2023-02-24 17:24
  • 阅读:4314

uni-simple-router 路由、拦截、最优雅的解决方案v2.0.0-alpha.1 更新日志

分类:uni-app

Breaking Changes

  • JavaScript,调整为安全使用 typescript:4.0.3 重构。新版完全靠近 【vue-router-next
  • 新增了部分用处较大的 API,同时也阉割掉了部分用处较少的API 。【详细见
  • URL传参得到了很好的解决,由手动选择encodeURI模式调整为auto。这意味着用户可随意放肆的传参!
  • $Routenext 管道函数同时新增 NAVTYPEfullPath
  • 开启对 uni 原生方法的拦截。这意味着使用 uni 原生方法和 Router 实例跳转能达到同样的效果,不仅如此.... APPnvue 页面也可以使用路由拦截。不过需要注意的是 nvue 下 无法使用 beforeRouteLeave 生命钩子,启动页也不能使用 nvue
  • 新的生命诞生保存,routerBeforeEachrouterAfterEachrouterErrorEachresolveQueryparseQuerydetectBeforeLock。这标志着开发者能更自由的使用路由核心功能!
  • 等等 太多。。。。

Fixes and Features

  • h5 ios 端 外部链接跳转回来白屏问题 #109
  • beforeRouteLeave 方法调用一次之后,不再二次触发的问题 #171
  • 小程序端参数带有特殊字符被编码后没解码回来 #172
  • h5 非首页进入后 再次打开这个页面会二次执行生命周期 #177
  • h5 端 vueRouterDev:false 情况下 vue-router 全部功能可用
  • 等等 太多。。。。

Known Issues

  • APP 端 tab 拦截后无法自动还原 选中区域,现需要开发者自行设置
  • APP 端 路由构建参数 animation 目前是无效的,可以在跳转方法中设置

Add

太多啦,不写啦!后面文档说。。。。

Migrating a v1.x project

  1. 调整以前使用new关键字到Function 构造
    //  router/index.js  
    import Vue from 'vue'  
    import {RouterMount,createRouter} from 'uni-simple-router'  
    const router = createRouter({  
     platform: process.env.VUE_APP_PLATFORM,  
     routes: [...modules]  
    })  
    router.beforeEach((to, from, next) => {  
    next()  
    })  
    router.afterEach((to, from) => {  
    })  
    Vue.use(router);  
    export {  
    router,  
    RouterMount  
    }
  2. 新的挂载方式,传入 router 示例挂载。
//main.js  
import Vue from 'vue'  
import App from './App'  
import {router,RouterMount} from './router'  
App.mpType = 'app'  
const app = new Vue({  
    ...App  
})  
// #ifdef H5  
    RouterMount(app,router,'#app')  
// #endif  

// #ifndef H5  
    app.$mount(); //为了兼容小程序及app端必须这样写才有效果  
// #endif  
2 关注 分享
Howee zhaoyu2020

要回复文章请先登录注册

zhaoyu2020

zhaoyu2020

能出支持vue3 的版本吗
2023-02-24 17:24