阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

Vant 2.0 发布:持之以恒,不乱节奏

  • 2020-03-15
  • 本文字数:1284 字

    阅读完需:约 4 分钟

Vant 2.0 发布:持之以恒,不乱节奏

持之以恒,不乱节奏,对于长期作业实在至为重要。一旦节奏得以设定,其余的问题便可迎刃而解。 – 村上春树


维护组件库就像跑马拉松,开源只是从起点迈出第一步,困难的是持之以恒地跑下去。


自 2017 年开源以来,Vant 已经跑了两年多时间,未曾停歇。在 2018 年我们发布了 1.0 版本和小程序版,并持续迭代了 100 多个小版本。


对于版本迭代,我们更倾向于 小步快跑,保持每周更新一个版本的节奏,及时解决大家的问题和需求。但是写代码偶尔也需要一点"仪式感",因此我们集中开发了一个多月的时间,将社区中反馈较多的需求一网打尽,为大家带来本次发布的 Vant 2.0 版本

一、回顾

在介绍 2.0 版本之前,先看一下我们到目前为止的成绩吧~


  • 发布 220 个版本

  • 合并 2100 个 PR

  • 处理 3000 个 issue

  • 累计 18000 个 star

  • 累计 1000000 下载量(npm & cnpm)


上面是 vant 和 vant-weapp 两个仓库的合并数据。值得一提的是 Vant 的 issue 处理比例在 98% 左右,大部分 issue 都会在 1~3 天内得到回复,感谢所有帮助我们回复 issue 的同学们。

二、内容介绍

2.1 新组件

在 2.0 版本中,我们引入了社区中呼声最高的四个组件,分别是:


  • Image 图片,类似于小程序原生的 Image 标签,支持多种图片裁剪模式

  • IndexBar 索引栏,通讯录中的字母索引栏,用于长列表快速索引

  • Skeleton 骨架屏,在待加载区域展示的占位区块,提供界面加载过程中的过渡效果

  • DropdownMenu 下拉菜单,用于列表的分类选择、筛选及排序


2.2 新文档

文档方面,我们重新设计了文档站点,用 卡片 的方式组织段落,更加直观。对一些较为复杂的组件,我们对示例进行细粒度的拆分,添加更多的用法介绍,以帮助大家更快地上手使用。


此外,文档站点也支持了 搜索版本切换


2.3 样式定制

移动端 UI 风格多变,对组件的可定制性要求较高。从 2.0 版本开始,Vant 中的所有组件都支持通过 Less 变量 进行样式定制。同时我们新增了多个样式相关的 Props,便于快速定制组件风格。


2.4 更轻量

轻量化是 Vant 的核心开发理念之一。在过去一年多时间里,我们新增了若干个组件和数百项功能,而 代码包体积从 1.0 版本的 169kb 降低到了 2.0 版本的 161kb(45kb gzipped),平均每个组件体积下降 13%,这主要得益于组件内部逻辑的重构和复用。


在未来的 Vue 3.0 版本中,会提供 Function-based API 这一更优的逻辑复用方式,预计能帮助 Vant 进一步优化代码包体积。

2.5 不兼容更新

2.0 版本中包含少量不兼容更新,主要是命名调整和移除个别属性。对于正在使用 1.x 版本的项目,请按照更新日志依次检查,大部分项目可以 无痛升级

2.6 其他改动

除上述内容外,2.0 版本还包含 无障碍访问优化和 70 项功能更新,想了解更多,请移步:完整更新日志(https://youzan.github.io/vant/#/zh-CN/changelog)。

三、后续计划

我们计划在今年下半年推出 VantWeapp 1.0 版本,目标是对标 Vant 2.0 版本,将大部分新组件和新功能同步到小程序端。


同时,Vant 3.0 版本也在酝酿当中,不出意外的话,3.0 版本会基于 Vue 3.0 实现,并争取和 Vue 3.0 同期发布


对于 Vant 1.x 版本,后续会进入维护期,跟进问题修复,但不再引入功能性改动。



期待大家对新版本的反馈!


2020-03-15 20:19603

评论

发布
暂无评论
发现更多内容

ARTS - 日常打卡 6

pjw

react源码解析18事件系统

全栈潇晨

React

做好项目管理,项目经理需要具备哪些优秀品质?

万事ONES

项目管理 研发管理 研发管理工具 ONES

微服务架构下的静态数据通用缓存机制

xcbeyond

缓存 微服务 6月日更

简单好用一键恢复丢失办公文档

淋雨

EasyRecovery 文件恢复 免费恢复软件 硬盘数据恢复

极狐GitLab致力打造DevSecOps 行业标准

极狐GitLab

ci 修复措施 安全扫描器 安全测试

在线PS(PhotoShop),打开PSD文件,图像处理

入门小站

PhotoShop ps

网络抓包实战01——互联⽹:客户端请求是如何到达服务器的

青春不可负,生活不可欺

Wireshark TCP/IP tcpdump 网络抓包 tcpcopy

迷惘的六月份

卢卡多多

生活状态 6月日更

OpenCV-Python+Moviepy结合进行视频特效处理

老猿Python

Python 音视频 Video PPT 引航计划

LinkedHashMap

wzh

Java 集合 LRU 数据结构与算法 LinkedHashMap

Linux之rmdir命令

入门小站

Linux

在线HTML标签清除工具

入门小站

工具

JS完美收官之——继承发展史

法医

大前端 js 6月日更

Java进阶 | 泛型机制与反射原理

晨雨听风

Java

业务架构训练营第 0 期模块五作业

菠萝吹雪—Code

架构实战营

JAVA 面向对象 (十)--接口和抽象类

加百利

Java 后端 笔记 6月日更

软件开发项目中,产品经理和程序员谁更累?

万事ONES

产品经理 研发管理 ONES 项目经理

容器化 | MySQL on K8s 开源开放的高可用容器编排方案

RadonDB

MySQL 容器 RadonDB KubeSphere

【21-15】PowerShell条件判断

耳东@Erdong

PowerShell 6月日更

数组与链表

wzh

Java 数组 链表 ArrayList 数据结构与算法

常见Java容器对比

wzh

Java collection hashmap set map

软件复杂度

海拉鲁

读书笔记 软件工程 软件设计

一次性搞清Java中的类加载问题

华为云开发者联盟

Java

详解Java中static关键字和final关键字的功能

华为云开发者联盟

Java static关键字 final关键字 静态变量

领域驱动设计101 - 领域服务

luojiahu

领域驱动设计 DDD

Elastic Job简单使用

赵镇

Elastic-job

文件保险箱——用区块链保护文件

趣链科技

区块链 区块链应用

HashMap源码总结

wzh

Java map 数据结构与算法 HashMap底层原理 散列表

Redis:我是如何与客户端进行通信的

码农参上

redis Redis 协议

线性排序

wzh

Java 排序算法 计数排序 基数排序 桶排序

Vant 2.0 发布:持之以恒,不乱节奏_文化 & 方法_陈嘉涵_InfoQ精选文章