封装uni.showModal、uni.showToast、uni.openSetting等

一、在新建common文件夹下media.js 复制一下内容

/**
 * promise 形式  getSetting
 */
export const getSetting=()=>{
  return new Promise((resolve,reject)=>{
    uni.getSetting({
      success: (result) => {
        resolve(result);
      },
      fail: (err) => {
        reject(err);
      }
    });
  })
}
/**
 * promise 形式  chooseAddress
 */
export const chooseAddress=()=>{
  return new Promise((resolve,reject)=>{
    uni.chooseAddress({
      success: (result) => {
        resolve(result);
      },
      fail: (err) => {
        reject(err);
      }
    });
  })
}

/**
 * promise 形式  openSetting
 */
export const openSetting=()=>{
  return new Promise((resolve,reject)=>{
    uni.openSetting({
      success: (result) => {
        resolve(result);
      },
      fail: (err) => {
        reject(err);
      }
    });
  })
}
/**
 *  promise 形式  showModal
 * @param {object} param0 参数
 * @param showCancel 是否显示取消按钮默认为 true
 * @param content 提示的内容
 */
export const showModal=({content})=>{
  return new Promise((resolve,reject)=>{
    uni.showModal({
      title: '提示',
      content: content,
      success :(res) =>{
        resolve(res);
      },
      fail:(err)=>{
        reject(err);
      }
    })
  })
}


/**
 *  promise 形式  showToast
 * @param {object} param0 参数
 */
export const showToast=({title})=>{
  return new Promise((resolve,reject)=>{
    uni.showToast({
      title: title,
      icon: 'none',
      success :(res) =>{
        resolve(res);
      },
      fail:(err)=>{
        reject(err);
      }
    })
  })
}

/**
 * promise 形式  login
 */
export const login=()=>{
  return new Promise((resolve,reject)=>{
    uni.login({
      timeout:10000,
      success: (result) => {
        resolve(result);
      },
      fail: (err) => {
        reject(err);
      }
    });
  })
}

/**
 * promise 形式的 小程序的微信支付
 * @param {object} pay 支付所必要的参数
 */
export const requestPayment=(pay)=>{
  return new Promise((resolve,reject)=>{
   uni.requestPayment({
      ...pay,
     success: (result) => {
      resolve(result)
     },
     fail: (err) => {
       reject(err);
     }
   });
     
  })
}


二、页面使用

<template>
	<view class="goods-container">
		<button @click="handerBtn">按钮</button>
	</view>
</template>
<script setup>
	import {showToast,showModal} from '../../common/media.js'
	const handerBtn = async () => {
		let res =  await showModal({ title: "支付成功",content:'content' });
		if (res.confirm) {
			console.log('点击了确定');
		}
	}
</script>

猜你喜欢

转载自blog.csdn.net/Tianxiaoxixi/article/details/130700774
今日推荐