import router from '@/router'; import { message } from 'ant-design-vue'; import { geti18n } from './i18n'; /** * 图片转Base64 */ function getBase64(file: File): Promise { return new Promise((resolve, reject) => { const reader = new FileReader(); reader.readAsDataURL(file); reader.onload = () => resolve(reader.result); reader.onerror = error => reject(error); }); } /** * 预览图片 */ export async function previewCover(file: any): Promise { if (!file.url && !file.preview) { file.preview = await getBase64(file.originFileObj); } return file.url || file.preview || ''; } /** * 存储对应key * @param key 键值 * @param value 内容 object自动序列化 */ export function saveValue(key: string, value: any): boolean{ if(typeof value == 'object'){ value = JSON.stringify(value) } try { localStorage.setItem(key, value); return true; } catch (error) { return false; } } /** * 获取对应key * @param key 键值 */ export function getValue(key: string): any{ let value = localStorage.getItem(key); if(value != null){ try { value = JSON.parse(value); } catch (error) { return value; } } return value; } /** * 验证图片是否为对应类型 * @param name 图片名字 */ export function provenimg(file: any): boolean | void{ const lan = geti18n() const type = ['png', 'jpg']; const ntypearr = file.name.split('.'); const ntype = ntypearr[ntypearr.length - 1]; console.log(ntype) const size = 2 * 1024 * 1024; if(file.size > size){ message.error(lan.$t('zuida') + "2MB") return false; } for(const i in type){ if(type[i] == ntype){ return true } } message.error(lan.$t("leixingcuowu")) return false; } /** * 验证视频是否为对应类型 * @param name 图片名字 */ export function provenvideo(file: any, isvideo?: boolean): boolean{ const lan = geti18n() const type = ['flv', 'mp4', 'wmv', 'mov', 'avi']; const ntypearr = file.name.split('.'); const ntype = ntypearr[ntypearr.length - 1]; if(isvideo){ const size = 500 * 1024 * 1024; if(file.size > size){ message.error(lan.$t('zuida') + "500MB") return false; } }else{ const size = 100 * 1024 * 1024; if(file.size > size){ message.error(lan.$t('zuida') + "100MB") return false; } } for(const i in type){ if(type[i] == ntype){ return true; } } message.error(lan.$t("leixingcuowu")) return false; } export function toindex(){ function GetUrlRelativePath() { const url = document.location.toString(); const arrUrl = url.split("//"); const start = arrUrl[1].indexOf("/"); let relUrl = arrUrl[1].substring(start); //stop省略,截取从start开始到结尾的所有字符 if (relUrl.indexOf("?") != -1) { relUrl = relUrl.split("?")[0]; } return relUrl; } const url = GetUrlRelativePath() console.log(url) const list = ['/wblogin','/wbloginerr','/fblogin','/fbloginerr'] for(const i in list){ if(list[i] == url){ return ; } } router.push("/") }