1 Star 0 Fork 3

黄日河/uniapp-router

forked from 野兔子/uniapp-router 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
index.js 2.21 KB
一键复制 编辑 原始数据 按行查看 历史
野兔子 提交于 2022-06-15 07:42 . 修改引入描述
import routeGuard from './src'
import { isEmpty, isNumber, isObject, isString, json, objectToUrl } from './uitls'
const router = {
install(app){
app.use(routeGuard)
},
/** 追加路由栈
* @param { string } url 页面路径
* @param { data } data 路由参数
* @param { object } other 其他参数
*/
push(url, data={}, other={}){
return uni.navigateTo({
url: url+objectToUrl(data, '?'),
...other,
})
},
/** 替换路由中的当前栈
* @param { String } url 要跳转的url路径
* @param { Object } data 路径参数
* @param { other } other 其他参数
*/
replace(url, data={}, other={}){
return uni.redirectTo({
url: url+objectToUrl(data, '?'),
...other,
})
},
/** 关闭所有页面,打开到应用内的某个页面
* @param { String } url 要跳转的url路径
* @param { Object } data 路径参数
* @param { other } other 其他参数
*/
reLaunch(url, data={}, other={}){
return uni.reLaunch({
url: url+objectToUrl(data, '?'),
...other,
})
},
/** 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。
* @param { String } url 要跳转的url路径
* @param { other } other 其他参数
*/
switchTab(url, other={}){
return uni.switchTab({
url,
...other,
})
},
/**
* 关闭当前页面,返回上一页面或多级页面
* @param { number } delta 返回的页面数
* @param { object } other 其他参数
*/
back(delta=1, other={}){
return uni.navigateBack({
delta,
...other
})
},
/**
* 获取所有 路由记录的完整列表
* @return { array } 当前路由栈列表
*/
getRoutes(){
return getCurrentPages()
},
/**
* 返回当前页面路由对象
* @return { object }
*/
route(){
return getCurrentPages().slice(-1)[0]
},
/**
* 添加一个前置导航守卫
* @param { function } callback 回调函数
*/
beforeEach(callback){
routeGuard.beforeEach(callback)
},
/**
* 添加一个后置导航守卫
* @param { function } callback 回调函数
*/
afterEach(callback){
routeGuard.afterEach(callback)
},
/**
* 监听路由跳转错误
* @param { function } callback 回调函数
*/
onError(callback){
uni.onPageNotFound(callback)
},
}
export default router
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
JavaScript
1
https://gitee.com/nsfjgf/uniapp-router.git
[email protected]:nsfjgf/uniapp-router.git
nsfjgf
uniapp-router
uniapp-router
master

搜索帮助