| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253 | 
import store from '../../store'const _config = {	baseUrl: "http://www.lychwl.com.cn"}// 提示const msg = (title, duration = 3000, mask = false, icon = 'none') => {	//统一提示方便全局修改	if (Boolean(title) === false) {		return;	}	uni.showToast({		title,		duration,		mask,		icon	});	setTimeout(function() {		uni.hideToast();	}, duration)}//等待框function showLoading(title='请稍候..', mask=false){	// 弹出系统等待对话框	// #ifdef APP-PLUS	_loading = plus.nativeUI.showWaiting( title, {		width: '76px',		height: '76px',		size: '12px',		modal: mask,		back: 'none', //安卓截获返回键 none:截获不做响应 close:截获后关闭等待框 none:不截获		loading: {			type: 'snow'		}	});	setTimeout(()=>{		hideLoading();	}, 10000)		return _loading;	// #endif	// #ifndef APP-PLUS	uni.showLoading({		title,		mask	})	// #endif}function inAction(fn, that, timeout = 2000){	if(that['in' + fn]){		return true	}	that['in' + fn] = true;	setTimeout(()=>{		that['in' + fn] = false;	}, timeout)	return false;}// 返回上一页const prePage = () => {	let pages = getCurrentPages();	let prePage = pages[pages.length - 2];	// #ifdef H5	return prePage;	// #endif	return prePage.$vm;}// 上传图片--注按需要对res处理 JSON.parse()function  uploadImg(formData){	return new Promise((resolve,reject)=>{		uni.chooseImage({			count:1,			success(chooseImageRes){				// resolve(chooseImageRes.tempFilePaths[0]);				const tempFilePaths = chooseImageRes.tempFilePaths[0];				let token = uni.getStorageSync("token")				uni.showLoading();				uni.uploadFile({					url:_config.consoleBaseUrl+'api/common/upload',					filePath: tempFilePaths,					name: 'file',					formData:formData,					header: {						'token':token,					},					success:(res)=>{						resolve(res.data);					},					fail:(err)=>{						msg('上传失败');						reject();					},					complete:()=> {						uni.hideLoading();					},				})			},			fail(err){				// msg('打开相册失败');				reject(err)			}		})	})}// 深拷贝const deepCopy = (p, c) => {	var c = c || {};	for (var i in p) {		if (typeof p[i] === "object") {			c[i] = (p[i].constructor === Array) ? [] : {};			deepCopy(p[i], c[i])		} else {			c[i] = p[i]		}	}	return c;}function request(url, data, options, method="POST") {	options = Object.assign({showLoading: false,loadingText: '加载中',loadingMask: false}, options);		const header = {	 	'Content-Type': 'application/x-www-form-urlencoded'	};	const token = uni.getStorageSync('token') || '';	if(token && typeof token == "string"){		data={...data,token};	}	let params = {		 url: _config.consoleBaseUrl + url,		//url,		data,		method,		header,	}	return new Promise((resolve, reject) => {		options.showLoading && showLoading(options.loadingText, options.loadingMask);		params.complete = (response) => {			options.showLoading && hideLoading();				if (response.statusCode === 200) {				 if(response.data.code != 1){					msg(response.data.msg);					reject();				}else{					resolve(response.data);				}			}else if(response.statusCode === 401){				msg("401,开发中。。。")				reject();			}else{				msg('网络繁忙 ' + response.statusCode, 1500, true);				reject();			}		}		uni.request(params);	})}function get(url, data={}, options={}) {	return request(url, data, options, 'GET');}function post(url, data={}, options={}) {	return request(url, data, options, 'POST');}// 处理时间const handleStrLength=(num)=> {	return String(num).length < 2 ? '0' + num : num;}const handleDatetime=(date)=> {	let m = handleStrLength(date.getMonth() + 1);	let d = handleStrLength(date.getDate());	let h = handleStrLength(date.getHours());	let mm = handleStrLength(date.getMinutes());	let dateStr = date.getFullYear() + "-" + m + "-" + d + " " + h + ":" + mm;	return dateStr;}const getCurTime=()=> {	let date = new Date();	return  handleDatetime(date);}const getEndTime=()=> {	let date = new Date();	date.setFullYear(date.getFullYear() + 1);	return handleDatetime(date);}function match(str, type, showMsg=true){	let exp = '';		switch(type){		case 'mobile':			if(str === ''){				showMsg && msg('请填写手机号码');				return false;			}			exp = /(^1[3|4|5|6|7|8|9][0-9]{9}$)/; //手机号			if(!exp.test(str)){				showMsg && msg('手机号码格式不正确');				return false;			}			break;		case 'pwd':			if(str === ''){				showMsg && msg('请填写密码');				return false;			}		case 'code':				if(str === ''){					showMsg && msg('请填写验证码');					return false;				}				if(!/^[0-9]+$/.test(str)){					showMsg && msg('验证码不正确');					return false;				}			break;	}	return true;}///**详情页处理富文本 details仅是变化替换部分a.replace(/<text>(abc)<\/text>/,function(match,$1) $1=abc---------------------------------------------------------------------- */const replaceDetail = (details = '') => {	//newContent仅是details替换后内容;  let newContent = details.replace(/<img[^>]*>/gi, function (match, capture) { //去除三标签    match = match.replace(/style="[^"]+"/gi, '').replace(/style='[^']+'/gi, '');    match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, '');    match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, '');    return match;  });  newContent = newContent.replace(/<br[^>]*\/>/gi, '');  newContent = newContent.replace(/<img/gi, '<img style="max-width:100%;height:auto;display:block;margin:0 auto;"');  return newContent;}export default {	    _config,		msg,		prePage,		get,		post,		deepCopy,		inAction,		replaceDetail,		getCurTime,		getEndTime,		match,		uploadImg,	};
 |