0.1.0 • Published 4 years ago

@jamesfancy/awx v0.1.0

Weekly downloads
2
License
MIT
Repository
-
Last release
4 years ago

awx = asynchronous wx

使用 JavaScript Proxy 特性对微信小程序的 wx 进行封装,使之以返回 Promise 对象的形式进行调用。随后可以使用 await 关键字简化程序结构。

一、安装和引用

直接使用源文件

找到 dist/awx.esm.js,拷贝到小程序项目目录(假设是 /util/awx.esm.js),在 app.js 中作为本地源文件引用:

import { asyncProxy } from "./util/awx.esm";

npm 安装

需要参考 微信开发文档的 npm 支持

npm install @jamesfancy/awx

引用

import { asyncProxy } from "@jamesfancy/awx";

二、注入 app

由于 asyncProxy 每次调用都会封装新的代码对象,而 asyncProxy 封装出来的代理对象只会缓存使用到的函数(懒加载)。建议在程序启动时使用 asyncProxy 封装 awx,注入 app 对象中。

// app.js
import { asyncProxy } from "./util/awx.esm";
// 或
// import { asyncProxy } from "./utils/async";


App({
    onLaunch: function () {
        this.awx = asyncProxy(wx);
        // ...
    }
});

三、在程序中使用

const app = getApp();
const { awx } = app;

Page({
    someMethod() {
        awx.request(...);
    }
});

参考公众号文章: