// import Vue from 'vue' // import store from '@/store/index.js' const message = { showToast(title="操作成功", options = {}) { const initOptions = { title, icon: 'none', mask: false, duration: 1200, position: 'center' } if (options && options.image) { initOptions.image = options.image } options = Object.assign({}, initOptions, options) return new Promise((resolve, reject) => { uni.showToast({ ...options, success: () => { const timer = setTimeout(() => { resolve() clearTimeout(timer) }, options.duration) } }) }) }, hideToast() { uni.hideToast() }, showLoading(options = {}) { const initOptions = { title: options&&options.title?options.title:'加载中', mask: true } options = Object.assign({}, initOptions, options) uni.showLoading(options); }, hideLoading() { uni.hideLoading() }, alert(content, options = {}) { const initOptions = { title: '提示', content, showCancel: false, confirmText: '确定', confirmColor: '#20613D' } options = Object.assign({}, initOptions, options) return new Promise((resolve) => { uni.showModal({ ...options, success: (res) => { if (res.confirm) { resolve() } } }) }) }, confirm(content, options = {}) { const initOptions = { title: '提示', content, showCancel: true, cancelText: '取消', cancelColor: '#000000', confirmText: '确定', confirmColor: '#20613D' } options = Object.assign({}, initOptions, options) return new Promise((resolve, reject) => { uni.showModal({ ...options, success: (res) => { if (res.confirm) { resolve(res) } if (res.cancel) { reject() } } }) }) } } // Vue.prototype.$message = message export default message