【小程序】Vant组件库和Promise化

简介: 【小程序】Vant组件库和Promise化

使用 npm 包


小程序对 npm 的支持与限制


目前,小程序中已经支持使用 npm 安装第三方包,从而来提高小程序的开发效率。但是,在小程


序中使用 npm 包有如下 3 个限制:


不支持依赖于 Node.js 内置库的包


不支持依赖于浏览器内置对象的包


不支持依赖于 C++ 插件的包


总结:虽然 npm 上的包有千千万,但是能供小程序使用的包却“为数不多”


使用 npm 包 - Vant Weapp

1. 什么是 Vant Weapp


Vant Weapp 是有赞前端团队开源的一套小程序 UI 组件库,助力开发者快速搭建小程序应用。它所使用的是 MIT 开源许可协议,对商业使用比较友好。 官方文档地址

https://youzan.github.io/vant-weapp 扫描下方的小程序二维码,体验组件库示例:


23c04bf1e1884900b3f4fda2c5c0cfbb.png

2. 安装 Vant 组件库


在小程序项目中,安装 Vant 组件库主要分为如下 3 步:


通过 npm 安装(建议指定版本为@1.3.3)


构建 npm 包


修改 app.json


详细的操作步骤,大家可以参考 Vant 官方提供的快速上手教程: https://youzan.github.io/vant-


weapp/#/quickstart#an-zhuang  


3. 使用 Vant 组件


安装完 Vant 组件库之后,可以在 app.json 的 usingComponents 节点中引入需要的组件,即可在wxml 中直接使用组件。示例代码如下:

13524e157cb544aabca5d352826df647.png


4. 定制全局主题样式


Vant Weapp 使用 CSS 变量来实现定制主题。 关于 CSS 变量的基本用法,请参考 MDN 文档:

https://developer.mozilla.org/zh-CN/docs/Web/CSS/Using_CSS_custom_properties


5. 定制全局主题样式

在 app.wxss 中,写入 CSS 变量,即可对全局生效:


869301a2ae3c4767a8cfdbed0edb511c.png


所有可用的颜色变量,请参考 Vant 官方提供的配置文件:

https://github.com/youzan/vant-weapp/blob/dev/packages/common/style/var.less


使用 npm 包 - API Promise化

1. 基于回调函数的异步 API 的缺点


默认情况下,小程序官方提供的异步 API 都是基于回调函数实现的,例如,网络请求的 API 需要按照如下的方式调用:

7069de2a11b74efcb912d72023b81520.png


缺点:容易造成回调地狱的问题,代码的可读性、维护性差!


2. 什么是 API Promise 化


API Promise化,指的是通过额外的配置,将官方提供的、基于回调函数的异步 API,升级改造为基于 Promise 的异步 API,从而提高代码的可读性、维护性,避免回调地狱的问


3. 实现 API Promise 化


在小程序中,实现 API Promise 化主要依赖于 miniprogram-api-promise 这个第三方的 npm 包。

它的安装和使用步骤如下:

b88c8beffaea48f182acfeb425de14eb.png

2f23602f84fb4eb3a85aa9b419a16b5a.png


4. 调用 Promise 化之后的异步 API


cd693ae5594d4f2ab5c61cb0e9afbd51.png


相关文章
|
4月前
|
前端开发 小程序 JavaScript
微信小程序promise封装
微信小程序promise封装
|
4月前
|
前端开发 小程序 API
【微信小程序】-- 使用 npm 包 - API Promise化(四十二)
【微信小程序】-- 使用 npm 包 - API Promise化(四十二)
|
4月前
|
资源调度 小程序 前端开发
【微信小程序】-- 使用 npm 包 - Vant Weapp(四十一)
【微信小程序】-- 使用 npm 包 - Vant Weapp(四十一)
|
10月前
|
JSON 小程序 前端开发
小程序动端组件库Vant Weapp的使用
小程序动端组件库Vant Weapp的使用
74 0
|
3月前
|
前端开发 小程序 JavaScript
微信小程序-Unhandled promise rejection TypeError: Cannot read property ‘get‘ of undefined
微信小程序-Unhandled promise rejection TypeError: Cannot read property ‘get‘ of undefined
|
1天前
|
小程序 前端开发
微信小程序中 vant weapp 使用外部的icon作为图标的步骤
本文介绍了在微信小程序中使用Vant Weapp组件库时,如何将外部的icon作为图标引入的步骤。包括在项目中创建静态资源文件夹、在iconfont官网添加图标并生成在线链接、下载iconfont代码并解压到小程序目录中、修改iconfont.wxss文件将本地链接替换为在线链接、在全局样式文件中引入iconfont.wxss样式,以及在页面中使用图标的方法。
微信小程序中 vant weapp 使用外部的icon作为图标的步骤
|
1天前
|
小程序 JavaScript 前端开发
微信小程序安装和使用 Vant Weapp 组件库
本文介绍了如何在微信小程序中安装和使用Vant Weapp组件库,包括通过npm安装、构建npm、修改配置文件以及在小程序中使用Vant Weapp提供的组件。
微信小程序安装和使用 Vant Weapp 组件库
|
3月前
|
小程序 开发者 Windows
轻量、可靠的小程序 UI 框架 -- Vant Weapp的安装和使用
轻量、可靠的小程序 UI 框架 -- Vant Weapp的安装和使用
94 1
|
4月前
|
JSON 小程序 前端开发
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议
微信小程序按需引入 vant 组件,自动清除项目中未使用的 vant 组件,减少代码包大小,避免因未使用到的 vant 组件触发隐私协议提交审核时被拒
73 1
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议
|
2月前
|
前端开发 小程序 API
【微信小程序】使用 Promise、async 和 await 将异步API 改写为同步
【微信小程序】使用 Promise、async 和 await 将异步API 改写为同步
47 0