vue3 使用vant

使用前提:

vite创建的vue3项目

vanthttps://vant-ui.github.io/vant/#/zh-CN/home

npm i vant

引入样式:

javascript 复制代码
main.js 

import 'vant/lib/index.css'

vant封装

javascript 复制代码
import { showLoadingToast,closeToast,showDialog,showConfirmDialog } from 'vant';


export function dialog(title,msg,success){
  showDialog({
    title: title||'温馨提示',
    message: msg,
  }).then(() => {
    // on close
    if(success){
      return success()
    }
    
  });
}

export  const loading ={
   showLoading:function (msg){
    showLoadingToast({
      message: msg||'加载中...',
      duration: 0, // 持续展示 toast
    })
   },
   hideLoading:function(){
    closeToast();
   }


}

export function confirmDialog(title,msg,success,error){
 return new Promise((resolve, reject) => {
  showConfirmDialog({
    title: title||'温馨提示',
    message:msg,
  })
    .then(() => {
      resolve(true)
      if(success){
        return success()
      }
    })
    .catch(() => {
      resolve(false)
      if(error){
        return error()
      }
    });
 })



}

使用

javascript 复制代码
import { loading } from "@/utils/vant";

loading.showLoading();

//loading.hideLoading()
javascript 复制代码
<script setup>

import { Empty} from "vant"

</script>

<template>
  <div>
   <Empty description="读取用户信息中,请稍后..."></Empty>
  </div>
</template>

我这里只是全局引用了样式,模块没有全局引入模块,需要时再引入

相关推荐
Penge66637 分钟前
《Go 后端开发者学 TypeScript:keyof关键字》
javascript
Penge6661 小时前
《Go 后端开发者学 TypeScript:extends关键字》
javascript
张张123y1 小时前
DSH 插件调试避坑:client.js 设置面板、热重载与高频报错排查表
开发语言·javascript·人工智能·开源·ecmascript·后端开发·ai agent
去伪存真1 小时前
AI Agent Harness 深度测评与技术选型实战
前端·agent
FRing034 小时前
vue2干货总结7(自定义指令、插槽、单页应用程序、路由的使用(VueRouter))
开发语言·前端·vue.js·vue2
Penge6666 小时前
《Go 后端开发者学 TypeScript:typescript 类型断言》
javascript
Penge6666 小时前
《Go 后端开发者学 TypeScript:Symbol》
javascript
疯华整猫7 小时前
被杀掉之后:我把 Android 的「唤起 + 常驻」重做了一遍
前端·面试·架构
ruanno_top7 小时前
点全选,已选的被清空了:Transfer 三态复选框的三个 bug
vue.js
三*一8 小时前
Mapbox‑GL JS 多边形折点编辑工具:实现原理、功能拆解与踩坑总结
开发语言·javascript·ecmascript