modal.js 1.93 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);
					// uni.hideLoading()
					//确认
					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()
	}
}