微信小程序:vant weapp组件库在mpvue中实践

Vant Weapp 是有赞移动端组件库 Vant 的小程序版本,两者基于相同的视觉规范,提供一致的 API 接口,助力开发者快速搭建小程序应用。
官方文档

前言

除了Vant WeappUI组件库之外,还有一些其他热门组件库可供选择。

  • WeUI : WeUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计,令用户的使用感知更加统一。包含button、cell、dialog、 progress、 toast、article、actionsheet、icon等各式元素。

  • iView Weapp : iView是TalkingData发布的一款高质量的基于Vue.js组件库,而iView weapp则是它们的小程序版本。

  • MinUI : MinUI 是蘑菇街前端开发团队开发的基于微信小程序自定义组件特性开发而成的一套简洁、易用、高效的组件库,适用场景广,覆盖小程序原生框架,各种小程序组件主流框架等,并且提供了专门的命令行工具。

  • Wux Weapp : Wux WeApp是一个非常不错的微信小程序自定义 UI 组件库。

本文以Vant Weapp为例,学习如何在mpvue中使用。原生开发安装参考官方文档。

在使用到遇到问题:首先到Github Issues查找解决方案。

另外,在mpvue使用vant-weap存在一些兼容问题,可以通过修改源码解决。

安装

mpvue中,不可以使用npm直接安装,由于node_modules目录下代码是不会被编译进dist目录中,所以只能通过手动获取导入到项目中。

获取源码:

git clone https://github.com/youzan/vant-weapp.git

dist目录下的所有文件复制到static/vant目录下。

└── static
    └── vant
        ├── action-sheet   					上拉菜单
	    ├── area 									省市区选择
	    ├── badge 								徽章
	    ├── badge-group 						徽章组和徽章一起使用
	    ├── button 								按钮
	    ├── card 									商品卡片
	    ├── cell 										单元格
	    ├── cell-group							单元格组和单元格一起使用
	    ├── checkbox							复选框
	    ├── checkbox-group				复选框组
	    ├── collapse								折叠面板
	    ├── collapse-item						折叠面板项
	    ├── datetime-picker					时间选择
	    ├── dialog									弹出框
	    ├── field									输入框
	    ├── goods-action						商品导航:商品详情页底部样式
	    ├── goods-action-button
	    ├── goods-action-icon
	    ├── icon									图标
	    ├── loading								加载
	    ├── nav-bar								导航栏
	    ├── notice-bar							通告栏:跑马灯滚动字幕效果
	    ├── notify									消息通知
	    ├── panel									面板
	    ├── picker									选择器
	    ├── picker-column
	    ├── popup									弹出层
	    ├── progress								进度条
	    ├── r
### 关于微信小程序 Vant Weapp 组件库 #### 什么是 Vant WeappVant Weapp 是由有赞团队开发的小程序组件库,它是 Vant 移动端组件库的小程序版本。它遵循统一的视觉设计规范,并提供了与 Web 版本一致的 API 接口,帮助开发者高效构建高质量的小程序应用[^1]。 --- #### 如何安装和配置 Vant Weapp? 为了在项目中使用 Vant Weapp,需完成以下操作: 1. **初始化 NPM 支持** 打开微信开发者工具,在菜单栏选择 `工具 -> 构建 npm` 并勾选 `使用 npm 模块` 选项。执行此步骤后会自动下载依赖并编译到项目的 `miniprogram_npm` 文件夹下[^3]。 2. **引入组件** 在页面或全局 app.json 中注册所需组件。例如: ```json { "usingComponents": { "van-button": "/miniprogram_npm/vant-weapp/button/index" } } ``` 3. **使用组件** 配置完成后可以在 WXML 文件中直接调用组件。例如: ```xml <van-button type="primary">按钮</van-button> ``` --- #### mpVueVant Weapp 的兼容性注意事项 当在 mpVue 项目中集成 Vant Weapp 时需要注意以下几点限制: - 动态组件 `<component>` 不被支持。 - `$attrs` 和 `$listeners` 属性无法穿透传递给子组件。 - 渲染函数(render function)不可用于自定义复杂逻辑[^2]。 针对这些问题,可以通过二次封装的方式解决,比如创建一个新的表单组件 TForm 来适配这些需求。 --- #### 示例代码展示 以下是通过 Vant Weapp 实现一个简单登录界面的例子: ```html <!-- index.wxml --> <view class="container"> <van-field label="用户名" placeholder="请输入用户名"></van-field> <van-field label="密码" password type="password" placeholder="请输入密码"></van-field> <van-button type="info" block bindtap="onLogin">登录</van-button> </view> ``` ```javascript // index.js Page({ data: {}, onLogin() { console.log('模拟登录'); }, }); ``` 上述代码展示了如何利用 Vant Weapp 提供的基础输入框 (`van-field`) 和按钮 (`van-button`) 创建交互式 UI。 --- #### 下载地址及相关资源链接 官方文档是获取最新功能说明和技术细节的最佳途径之一。可以访问 [Vant Weapp GitHub](https://github.com/youzan/vant-weapp) 或者其官网来了解更多信息以及下载最新的稳定版包文件。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

繁华落尽Owenlee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值