代码提交
This commit is contained in:
148
utils/index.js
148
utils/index.js
@ -1,60 +1,130 @@
|
||||
import stringify from '@/utils/querystring'
|
||||
|
||||
import { timeFormat } from '@/uni_modules/uv-ui-tools/libs/function/index.js';
|
||||
import router from './router'
|
||||
import cookie from './cookie'
|
||||
|
||||
/**
|
||||
* 未登录无权限
|
||||
*/
|
||||
export const handleLoginFailure = () => {
|
||||
// router.replace({
|
||||
// path: '/pages/login/login',
|
||||
// })
|
||||
uni.redirectTo({
|
||||
url: '/pages/login/login',
|
||||
})
|
||||
// todo 添加记录参数逻辑
|
||||
// router.replace({
|
||||
// path: '/pages/login/login',
|
||||
// })
|
||||
const routes = getCurrentPages();
|
||||
const curRoute = routes[routes.length - 1];
|
||||
if (["pages/login/guid", "pages/login/index"].includes(curRoute.route)) {
|
||||
return;
|
||||
}
|
||||
const data = curRoute?.$page?.fullPath;
|
||||
uni.setStorage({
|
||||
key: 'lastFullPath',
|
||||
data
|
||||
})
|
||||
uni.redirectTo({
|
||||
url: '/pages/login/guid',
|
||||
})
|
||||
}
|
||||
|
||||
export const afterLogin = () => {
|
||||
const tabsList = [
|
||||
'/pages/goodsCategory/goodsCategory',
|
||||
'/pages/index/index',
|
||||
'/pages/shoppingCart/shoppingCart',
|
||||
'/pages/user/user'
|
||||
]
|
||||
const lastPath = uni.getStorageSync('lastFullPath');
|
||||
if (lastPath) {
|
||||
const str = lastPath.split("?")
|
||||
if (tabsList.includes(str[0])) {
|
||||
uni.switchTab({url: lastPath})
|
||||
} else {
|
||||
uni.redirectTo({url: lastPath})
|
||||
}
|
||||
uni.removeStorageSync('lastFullPath')
|
||||
} else {
|
||||
uni.switchTab({url: '/pages/index/index'})
|
||||
}
|
||||
}
|
||||
|
||||
export function parseUrl(location) {
|
||||
if (typeof location === 'string') return location
|
||||
const { url, query } = location
|
||||
if (typeof location === 'string') return location
|
||||
const {url, query} = location
|
||||
|
||||
const queryStr = stringify(query)
|
||||
const queryStr = stringify(query)
|
||||
|
||||
if (!queryStr) {
|
||||
return url
|
||||
}
|
||||
if (!queryStr) {
|
||||
return url
|
||||
}
|
||||
|
||||
return `${url}?${queryStr}`
|
||||
return `${ url }?${ queryStr }`
|
||||
}
|
||||
|
||||
|
||||
export function objectURLToBlob(url) {
|
||||
return new Promise(resolve => {
|
||||
const http = new XMLHttpRequest()
|
||||
http.open('GET', url, true)
|
||||
http.responseType = 'blob'
|
||||
http.onload = function (e) {
|
||||
if (this.status == 200 || this.status === 0) {
|
||||
resolve(this.response)
|
||||
}
|
||||
}
|
||||
http.send()
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断h5环境是否在微信浏览器内
|
||||
* @returns {boolean}
|
||||
*/
|
||||
export function h5InWeChat() {
|
||||
if (!navigator || (navigator && !navigator.userAgent)) return false
|
||||
let ua = navigator.userAgent.toLowerCase();
|
||||
return ua.match(/MicroMessenger/i) == "micromessenger"
|
||||
}
|
||||
|
||||
export function createMessage(msg, data) {
|
||||
return {
|
||||
msg,
|
||||
data
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
const toAuth = () => {
|
||||
uni.showToast({
|
||||
title: '暂未开放',
|
||||
icon: 'none',
|
||||
duration: 2000,
|
||||
})
|
||||
uni.showToast({
|
||||
title: '暂未开放',
|
||||
icon: 'none',
|
||||
duration: 2000,
|
||||
})
|
||||
}
|
||||
|
||||
export default {
|
||||
install: (app, options) => {
|
||||
// 在这里编写插件代码
|
||||
// 注入一个全局可用的 $translate() 方法
|
||||
app.config.globalProperties.$yrouter = router
|
||||
app.config.globalProperties.$cookie = cookie
|
||||
app.config.globalProperties.$toAuth = toAuth
|
||||
app.config.globalProperties.$onClickLeft = () => {
|
||||
router.back()
|
||||
}
|
||||
install: (app, options) => {
|
||||
// 在这里编写插件代码
|
||||
// 注入一个全局可用的 $translate() 方法
|
||||
app.config.globalProperties.$yrouter = router
|
||||
app.config.globalProperties.$cookie = cookie
|
||||
app.config.globalProperties.$toAuth = toAuth
|
||||
app.config.globalProperties.$timeFormat = timeFormat
|
||||
app.config.globalProperties.$onClickLeft = () => {
|
||||
uni.navigateBack()
|
||||
// router.back()
|
||||
}
|
||||
|
||||
// #ifdef H5
|
||||
app.config.globalProperties.$platform = 'h5'
|
||||
// #endif
|
||||
// #ifdef H5
|
||||
app.config.globalProperties.$platform = 'h5'
|
||||
// #endif
|
||||
|
||||
// #ifdef APP-PLUS
|
||||
// app端
|
||||
app.config.globalProperties.$platform = 'app'
|
||||
// #endif
|
||||
// #ifdef APP-PLUS
|
||||
// app端
|
||||
app.config.globalProperties.$platform = 'app'
|
||||
// #endif
|
||||
|
||||
// #ifdef MP-WEIXIN
|
||||
app.config.globalProperties.$platform = 'routine'
|
||||
// #endif
|
||||
},
|
||||
// #ifdef MP-WEIXIN
|
||||
app.config.globalProperties.$platform = 'routine'
|
||||
// #endif
|
||||
},
|
||||
}
|
||||
|
Reference in New Issue
Block a user