unix-router v0.3.0 发布:params 持久化+插件体系升级

发布时间:2026/9/12 21:35:16
unix-router v0.3.0 发布:params 持久化+插件体系升级 发布日期2026-09-11unix-router v0.3.0 发布本次升级完成插件体系PluginContext完善新增params 持久化跨刷新/重进保留并修复两项与内部 key 相关的健壮性问题。核心更新新增paramsPersistent— params 持久化配合ParamsPlugin新增RouterOptions.paramsPersistent配置默认false。开启后页面参数默认写入storage跨刷新 / 重新进入仍能取回不再局限于内存刷新即失效。import{createRouter,ParamsPlugin}frommeng-xi/unix-router// 开启 params 默认持久化constroutercreateRouter({routes,plugins:[ParamsPlugin],paramsPersistent:true})// params 经 __params__ 内部通道传递刷新/返回后仍可读取awaitrouter.push({name:detail,params:newMap([[id,1024]])})新增插件体系PluginContext完善PluginContext现提供完整导航 hook支持编写自定义插件七大导航 hookonEnrichLocation/onAfterResolve/onPrepareNavigation/onCompleteNavigation/onNavigationAbort/onRouteSync/onAppInstall上下文成员router/paramsManager/hasPluginconstAnalyticsPlugin:RouterPlugin{name:analytics,install(context:PluginContext){context.onAfterResolve((location,pluginData){pluginData.set(ts,Date.now())})context.onCompleteNavigation(ctx{report(ctx.to.path,ctx.pluginData.get(ts))})}}补齐guardRoute/onRouteChangeRouter.guardRoute()冷启动直接 URL 进入时补跑守卫链避免 deep link 绕过权限Router.onRouteChange()监听完整导航与状态同步两类路由变化修复内部 key 不泄漏导航成功后写入currentRoute前剔除__params__内部 keystripInternalKeys避免暴露给用户params 空值崩溃ParamsPlugin的afterResolve对Map.get未命中时的null返回值做防护修复其可能中断导航链路的崩溃安装方式uni_modules推荐import { createRouter, ParamsPlugin, InterceptorPlugin } from /uni_modules/ux-router/utssdk/index.utsnpmpnpm add meng-xi/unix-routerpackages/core为 UTS 源分发文档从入门到精通的完整文档 入门 → 进阶 → 精通位于packages/docs已新增插件系统教程plugins、getting-started、navigation中英文同步。平台兼容性Web / H5、微信小程序 → 编译为 JSApp-Android → 编译为 Kotlin / JSiOSVDOM→ 编译为 Swift底层仅依赖uni.*原生导航 API双模式兼容 uni-app x欢迎 Star 与反馈GitHub · 更新日志