https://github.com/fudiwei/wxjssdk-promisify
为微信公众号 JS-SDK 提供 TypeScript 支持,同时将其基于回调函数的异步 API 转化为 Promise 形式。
https://github.com/fudiwei/wxjssdk-promisify
jssdk promisify typescript wechat-jssdk wx-jssdk
Last synced: 2 months ago
JSON representation
为微信公众号 JS-SDK 提供 TypeScript 支持,同时将其基于回调函数的异步 API 转化为 Promise 形式。
- Host: GitHub
- URL: https://github.com/fudiwei/wxjssdk-promisify
- Owner: fudiwei
- License: mit
- Created: 2021-07-06T10:05:16.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-04-13T09:15:29.000Z (about 3 years ago)
- Last Synced: 2024-10-29T14:25:23.795Z (8 months ago)
- Topics: jssdk, promisify, typescript, wechat-jssdk, wx-jssdk
- Language: JavaScript
- Homepage:
- Size: 421 KB
- Stars: 15
- Watchers: 1
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# @skit/wxjssdk-promisify
[](https://www.npmjs.com/package/@skit/wxjssdk-promisify)
[](https://www.npmjs.com/package/@skit/wxjssdk-promisify)
[](https://david-dm.org/fudiwei/wxjssdk-promisify)
[](https://mit-license.org/)---
## 特性
- 将微信 JS-SDK 中提供的基于回调函数的 API,转化为 Promise 形式(_wx.func_ 将转换成同名的 _wx.funcAsync_ 形式);
- 可单独拷贝到项目中使用;
- 支持 TypeScript;
- 与微信 JS-SDK(当前版本:1.6.0)同步更新。---
## 用法
### 安装:
```shell
npm install @skit/wxjssdk-promisify
```### 导入:
```javascript
const $ = require('@skit/wxjssdk-promisify');$.promisifyAll({
root: wx, // (可选)指定异步方法挂载到某个对象的属性上。默认挂载到 wx。
extends: ['checkJsApi'] // (可选)若 JS-SDK 新增了某些 API 而本库尚未更新,可由此传入相应的方法名数组以转换成异步方法。
});
```### 使用异步方法:
```javascript
wx.checkJsApiAsync({ jsApiList: ['chooseWXPay'] })
.then((res) => {
console.info('success', res.checkResult);
})
.catch((err) => {
console.error('fail', err);
})
.finally(() => {
console.log('complete');
});/**
* @example 以上示例代码等同于下方原生实现:
*/
wx.checkJsApi({
jsApiList: ['chooseWXPay'],
success: (res) => {
console.info('success', res.checkResult);
},
fail: (err) => {
console.error('fail', err);
},
complete: () => {
console.log('complete');
}
});
```