開發用到uview 的toast 很常用的內容使用卻很繁瑣
所以做了簡單封裝方便使用
前後對比:
this.$refs.uToast.show({ type: 'success', title: '成功主題(帶圖示)', message: "莊生曉夢迷蝴蝶", iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/success.png' }) // 使用前用法
使用後
showUToast(_t.$refs.uToast, 'success', '校驗透過')
雖然損失了一部分靈活性 不過toast本身也不需要太多靈活性彈出框就夠用了
使用步驟
1. 在utils目錄下 建立檔案 uToast.js
export const showUToast = (that, type , message) => { let params = { type: 'default', message: "無", iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/default.png' } switch(type){ case "success": params.type = type params.iconUrl = 'https://cdn.uviewui.com/uview/demo/toast/success.png' params.message = message break case "error": params.type = type params.iconUrl = 'https://cdn.uviewui.com/uview/demo/toast/error.png' params.message = message break case "loading": params.type = type params.iconUrl = 'https://cdn.uviewui.com/uview/demo/toast/loading.png' params.message = message break default: params.message = message } that.show({ ...params }) }
2. 在需要使用的頁面引入
<template> <view> <u-toast ref="uToast"></u-toast> </view> </template> <script> import { showUToast } from '@/utils/uToast.js' export default { data() { return { } }, computed: { }, methods: { showToast(params) { showUToast(_t.$refs.uToast, 'success', "文字提示") } } } </script> <style lang="scss"> </style>
3. 檢視效果