modal.js 1.88 KB
export default {
	// 消息提示
	msg(content) {
		uni.showToast({
			title: content,
			icon: 'none'
		})
	},
	// 错误消息
	msgError(content) {
		uni.showToast({
			title: content,
			icon: 'error'
		})
	},
	// 成功消息
	msgSuccess(content) {
		uni.showToast({
			title: content,
			icon: 'success'
		})
	},
	// 隐藏消息
	hideMsg(content) {
		uni.hideToast()
	},
	// 弹出提示
	alert(content, title) {
		uni.showModal({
			title: title || '系统提示',
			content: content,
			showCancel: false
		})
	},
	// 确认窗体
	confirm(content, title, option = {
		confirmText: "确认",
		cancelText: "取消",
		delCancel: false
	}) {
		return new Promise((resolve, reject) => {
			// #ifdef APP
			Vue.prototype.$showModal({
				title:title || '系统提示',
				concent: content,
				cancelVal: option.cancelText,
				confirmVal: option.confirmText,
				delCancel: option.delCancel,
			}).then(res => {
				console.log(res);
				//确认
				resolve(res)
			}).catch(res => {
				//取消
				reject()
				console.log(res);
			})
			// #endif
			
			// #ifndef APP
			uni.showModal({
				title: title || '系统提示',
				content: content,
				cancelText: option.cancelText,
				confirmText: option.confirmText,
				showCancel: option.showCancel,
				confirmColor: "#EA5504",
				success: function(res) {
					if (res.confirm) {
						resolve(res.confirm)
					}

					if (res.cancel) {
						reject()
					}
				}
			})
			// #endif
		})
	},

	// 提示信息
	showToast(option) {
		if (typeof option === "object") {
			uni.showToast(option)
		} else {
			uni.showToast({
				title: option,
				icon: "none",
				duration: 2500
			})
		}
	},
	// 打开遮罩层
	loading(content) {
		uni.showLoading({
			title: content,
			icon: 'none'
		})
	},
	showLoading(content) {
		uni.showLoading({
			title: content,
			icon: 'loading'
		})
	},
	// 关闭遮罩层
	closeLoading() {
		uni.hideLoading()
	}
}