赞
踩
Vant 是一个轻量、可靠的移动端组件库,于 2017 年开源。
目前 Vant 官方提供了 Vue 2 版本、Vue 3 版本和微信小程序版本,并由社区团队维护 React 版本和支付宝小程序版本。
官方网址:Vant 3 - Mobile UI Components built on Vue
通过 npm 安装
在现有项目中使用 Vant 时,可以通过 npm
进行安装:
- # Vue 3 项目,安装最新版 Vant
- npm i vant
-
- # Vue 2 项目,安装 Vant 2
- npm i vant@latest-v2
当然,你也可以通过 yarn
或 pnpm
进行安装:
- # 通过 yarn 安装
- yarn add vant
-
- # 通过 pnpm 安装
- pnpm add vant
使用 Vant 最简单的方法是直接在 html 文件中引入 CDN 链接,之后你可以通过全局变量 vant
访问到所有组件。
- <!-- 引入样式文件 -->
- <link
- rel="stylesheet"
- href="https://cdn.jsdelivr.net/npm/vant@3/lib/index.css"
- />
-
- <!-- 引入 Vue 和 Vant 的 JS 文件 -->
- <script src="https://cdn.jsdelivr.net/npm/vue@3"></script>
- <script src="https://cdn.jsdelivr.net/npm/vant@3/lib/vant.min.js"></script>
-
- <script>
- // 在 #app 标签下渲染一个按钮组件
- const app = Vue.createApp({
- template: `<van-button>按钮</van-button>`,
- });
- app.use(vant);
-
- // 通过 CDN 引入时不会自动注册 Lazyload 组件
- // 可以通过下面的方式手动注册
- app.use(vant.Lazyload);
-
- // 调用函数组件,弹出一个 Toast
- vant.Toast('提示');
-
- app.mount('#app');
- </script>
免费 CDN
你可以通过以下免费 CDN 服务来使用 Vant:
注意:免费 CDN 一般用于制作原型或个人小型项目,不推荐在企业生产环境中使用免费 CDN。
对于企业开发者,建议使用以下方式:
1. 安装插件
- # 通过 npm 安装
- npm i vite-plugin-style-import@1.4.1 -D
-
- # 通过 yarn 安装
- yarn add vite-plugin-style-import@1.4.1 -D
-
- # 通过 pnpm 安装
- pnpm add vite-plugin-style-import@1.4.1 -D
2. 配置插件
安装完成后,在 vite.config.js
文件中配置插件:
- import vue from '@vitejs/plugin-vue';
- import styleImport, { VantResolve } from 'vite-plugin-style-import';
-
- export default {
- plugins: [
- vue(),
- styleImport({
- resolves: [VantResolve()],
- }),
- ],
- };
3. 引入组件
完成以上两步,就可以直接使用 Vant 组件了:
- import { createApp } from 'vue';
- import { Button } from 'vant';
-
- const app = createApp();
- app.use(Button);
Vant 默认支持通过 Tree Shaking 实现 script 的按需引入。
全局注册
全局注册后,你可以在 app 下的任意子组件中使用注册的 Vant 组件。
- import { Button } from 'vant';
- import { createApp } from 'vue';
-
- const app = createApp();
-
- // 方式一. 通过 app.use 注册
- // 注册完成后,在模板中通过 <van-button> 或 <VanButton> 标签来使用按钮组件
- app.use(Button);
-
- // 方式二. 通过 app.component 注册
- // 注册完成后,在模板中通过 <van-button> 标签来使用按钮组件
- app.component(Button.name, Button);
局部注册
局部注册后,你可以在当前组件中使用注册的 Vant 组件。
- import { Button } from 'vant';
-
- export default {
- components: {
- [Button.name]: Button,
- },
- };
对于组件注册更详细的介绍,请参考 Vue 官方文档 - 组件注册。
<script setup>
在 <script setup>
中可以直接使用 Vant 组件,不需要进行组件注册。
- <script setup>
- import { Button } from 'vant';
- </script>
-
- <template>
- <Button />
- </template>
JSX/TSX
在 JSX 和 TSX 中可以直接使用 Vant 组件,不需要进行组件注册。
- import { Button } from 'vant';
-
- export default {
- render() {
- return <Button />;
- },
- };
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。