Vue3.0+Vant ui配置按需引入(非vue-cli3.0)


在这里插入图片描述

1. 说在前面

1.1 这是一件令我比较无语的事情

  • 最近使用 Vue3.0 + vant开发项目,官网上的配置,按需引入其实不太好理解
  • 于是想着“面向百度编程”,百度下看看,结果网上有很多人连Vue3.0和vue-cli3.0都分不清楚,找了半天都是vue-cli3.0的(有同感的可以评论区扣个1)我人都傻了,于是自己摸索了一个正确的操作方式

1.2 Vant ui简介

  • Vant 适用于移动端
  • Vant 是有赞前端团队开源的移动端组件库,十大受欢迎组件库之一,用户量挺大的,10w+(所以生态还是不错的)
  • 目前 Vant 官方提供了 Vue 2 版本、Vue 3 版本和微信小程序版本,并由社区团队维护 React 版本和支付宝小程序版本。

2. Vant ui安装

2.1 npm安装

# Vue 2 项目,安装 Vant 2
npm i vant@2

# Vue 3 项目,安装 Vant 3
npm i vant@3

2.2 其它安装方式

# 通过 yarn 安装
yarn add vant@3

# 通过 pnpm 安装
pnpm add vant@3

3. 配置按需引入

3.1 webpack依赖

  • 通过 babel 插件按需引入组件(与element ui 同)
# 安装插件
npm i babel-plugin-import -D
  • 在.babelrc 或 babel.config.js 中添加配置(项目中没有的话自己建立一个)
module.exports = {
    
    
  "plugins": [
    [
      "import",
      {
    
    
        "libraryName": "vant",
        "libraryDirectory": "es",
        "style": true
      }
    ]
  ]
}

3.2 Vite构建的项目

  • 在 Vite 项目中按需引入组件
# 安装插件
npm i vite-plugin-style-import -D
  • vite.config.js文件配置
import vue from '@vitejs/plugin-vue';
import styleImport from 'vite-plugin-style-import';

export default {
    
    
  plugins: [
    vue(),
    styleImport({
    
    
      libs: [
        {
    
    
          libraryName: 'vant',
          esModule: true,
          resolveStyle: (name) => `vant/es/${
      
      name}/style`,
        },
      ],
    }),
  ],
};

4. 配置main.js(官网上说的估计小白看不懂)

  • 与Vue2.x 的通过Vue.use(某组件)不同
  • Vue3.0的组件注册需要通过 createApp(App)
  • 这里配置了按需引入,注释也写了,很明朗(如下:)
import {
    
     createApp } from 'vue'
import App from './App.vue'
// 需要啥组件就引进来
import {
    
     Button, Rate } from 'vant'
let app = createApp(App)
// 这里与Vue2中的Vue.use()不同
app.use(Button)
app.use(Rate)

app.mount('#app')

5. 页面中使用按需引入的组件

  • 这里和element ui一样的,以我刚注册的两个组件使用为例:
<template>
  <div class="hello">
    <van-button type="primary">主要按钮</van-button>
    <van-rate v-model="value" />
  </div>
</template>
  • 效果图如下,搞定:
    在这里插入图片描述
    同时也希望大家把这篇文顶上去,让需要的人能够快速找到教程,不会被那些Vue-cli3.0的文章所误导

1. 希望本文能对大家有所帮助,如有错误,敬请指出

2. 原创不易,还请各位客官动动发财的小手支持一波(关注、评论、点赞、收藏)
3. 拜谢各位!后续将继续奉献优质好文
4. 如果存在疑问,可以私信我(主页有Q)

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_35942348/article/details/121574071