UNPKG

fx-form-widget

Version:
76 lines (72 loc) 2.5 kB
import Cookies from 'js-cookie'; import qs from 'qs'; /** * 获取路径query参数 */ export var getQuery = function getQuery() { var _window$location$hash, _window$location$hash2; return qs.parse(window.location.search.substring(1) || ((_window$location$hash = window.location.hash) === null || _window$location$hash === void 0 ? void 0 : (_window$location$hash2 = _window$location$hash.split('?')) === null || _window$location$hash2 === void 0 ? void 0 : _window$location$hash2[1])); }; /** * 格式化url参数 */ export var parseQueryString = function parseQueryString(dataUrl) { var url = dataUrl ? dataUrl : window.location.href; var regUrl = /^[^\?]+\?([\w\W]+)$/; //eslint-disable-line var regPara = /([^&=]+)=([\w\W]*?)(&|$|#)/g; var arrUrl = regUrl.exec(url); var ret = {}; if (arrUrl && arrUrl[1]) { var strPara = arrUrl[1]; var result; while ((result = regPara.exec(strPara)) != null) { ret[result[1]] = result[2]; } } return ret; }; /** * 下载文件 */ export var downloadFile = function downloadFile(url, filename) { if (!url) return; var link = document.createElement('a'); //创建a标签 link.style.display = 'none'; //使其隐藏 link.href = url; //赋予文件下载地址 link.setAttribute('download', filename); //设置下载属性 以及文件名 document.body.appendChild(link); //a标签插至页面中 link.click(); //强制触发a标签事件 document.body.removeChild(link); }; /** * 判断值是否真的为空,不存在 */ export var isNotNullValue = function isNotNullValue(value) { if (value === '' || value === undefined || value === null) { return false; } else { return true; } }; export var getEnv = function getEnv(preEnv) { if (preEnv && ['dev', 'qa', 'prod'].includes(preEnv)) return preEnv; var _getQuery = getQuery(), env = _getQuery.env; var localEnv = window.localStorage.getItem('env') || env; var ENV; if (window.location.host.startsWith('dev-') || window.location.host.startsWith('dev.')) { ENV = 'dev'; } else if (window.location.host.startsWith('qa-') || window.location.host.startsWith('qa.')) { ENV = 'qa'; } else if (['dev', 'qa', 'prod'].includes(localEnv)) { ENV = localEnv; } else { ENV = 'prod'; } return ENV; }; export var getToken = function getToken(preToken) { var _getQuery2 = getQuery(), token = _getQuery2.token; return preToken || token || Cookies.get('token') || localStorage.getItem('token'); };