Vue常用函数

VUE   2023-11-19 10:59   13   0  
/**
 * 基本缓存方法
 */
export function getCookie(key) {
	let str = uni.getStorageSync(key);
	return str;
}
export function setCookie(key, data) {
	uni.setStorageSync(key, data)
}
export function removeCookie(key) {
	uni.removeStorageSync(key);
}

/**
 * 复制内容到黏贴板
 * @param {Object} str
 */
copy(str) {
	uni.setClipboardData({
		data: str,
		success: function() {
			uni.showToast({
				title: "Copy Successfully",
				duration: 2000,
				icon: 'none'
			});
		},
		fail(err) {
			uni.showToast({
				title: "Replication Failed:" + err,
				duration: 2000,
				icon: 'none'
			});
		}
	})
},

/**
 * 消息提示
 * @param {Object} title
 */
message(title) {
	if (title) {
		uni.showToast({
			title: title,
			duration: 2000,
			icon: 'none'
		});
	} else {
		return {
			ok: function() {
				uni.showToast({
					title: "操作成功",
					duration: 2000,
					icon: 'success'
				});
			},
			err: function(title) {
				uni.showToast({
					title: "操作失败",
					duration: 2000,
					icon: 'error'
				});
			}
		}

	}
}

/**
 * 获取本地图片
 * @param {Object} imagePath
 */
getImageStatic(imagePath) {
	return '/static/image/' + imagePath;
}

/**
 * 保留小数点
 * @value { number|string } 原数据
 * @fractionDigits {number}  保留几位数  默认2位
 */
round(value, fractionDigits = 2) {
	var tens = Math.pow(10, fractionDigits);
	return Math.round(value * tens) / tens;
}

/**
 * 检测时间差
 * var now = new Date().getTime();
 * checkTimeDiff(lastTime, now, 1)
 * @param {Object} lastTime 
 * @param {Object} now 当前时间
 * @param {Object} timeDiffSecondsValues
 */
checkTimeDiff(lastTime, now, timeDiffSecondsValues) {
	if (!lastTime) {
		return true;
	}
	if (now - lastTime > timeDiffSecondsValues * 1000) {
		return true;
	}
	return false;
}

/**
 * 替换字符串
 * @str {string} stringFormat('测试{0}123{1}',"内容","完成")
 */
stringFormat(str, ...args) {
	if (!str) {
		return str;
	}
	for (var i = 0; i < args.length; i++) {
		var reg = new RegExp("({)" + i + "(})", "g");
		str = str.replace(reg, args[i]);
	}
	return str;
}

/**
 * 获取设备信息
 * @deviceId 		设备 id 
 * @appId	 	manifest 中应用appid,即DCloud appid。	
 * @appName		manifest 中应用名称	
 * @appVersion		manifest 中应用版本名称。	
 * @appVersionCode	manifest 中应用版本名号。	
 * @screenWidth		屏幕宽度	
 * @screenHeight	屏幕高度		
 * @windowWidth		可使用窗口宽度		
 * @windowHeight	可使用窗口高度		
 * @windowTop		可使用窗口的顶部位置		
 * @windowBottom	可使用窗口的底部位置			
 * @statusBarHeight	手机状态栏的高度				
 * @deviceType 		设备类型。如phone、pad、pc、unknow	
 * @deviceBrand 	设备品牌。如:apple、huawei	
 * @deviceModel 	设备型号	
 * @osName 			系统名称	ios、android	
 * @osVersion		操作系统版本。如 ios 版本,andriod 版本	
 */
getSystemInfo() {
	let systemInfo = {};
	uni.getSystemInfo({
		success: (e) => {
			systemInfo.deviceId = e.deviceId;
			
			systemInfo.appId = e.appId;
			systemInfo.appName = e.appName;
			systemInfo.appVersion = e.appVersion;
			systemInfo.appVersionCode = e.appVersionCode;
			
			systemInfo.screenWidth = e.screenWidth;
			systemInfo.screenHeight = e.screenHeight;
			systemInfo.windowWidth = e.windowWidth;
			systemInfo.windowHeight = e.windowHeight;
			systemInfo.windowTop = e.windowTop;
			systemInfo.windowBottom = e.windowBottom;
			systemInfo.statusBarHeight = e.statusBarHeight;
			
			systemInfo.deviceType = e.deviceType;
			systemInfo.deviceBrand = e.deviceBrand;
			systemInfo.deviceModel = e.deviceModel;
			systemInfo.osName = e.osName;
			systemInfo.osVersion = e.osVersion;
		}
	})
	return systemInfo;
}


博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。