1.8.0 • Published 2 months ago

@xhyyfe/wxmp-sdk v1.8.0

Weekly downloads
-
License
-
Repository
-
Last release
2 months ago

小猴云印微应用接入文档

一、安装

安装小猴云印微应用 sdk

npm install @xhyyfe/wxmp-sdk

二、配置

小程序配置

域名相关配置请联系我们!

三、接入

通过小程序 webview 组件进入微应用。

代码参考示例:

<!-- .wxml -->
<web-view src="{{url}}" bindmessage="onmessage"></web-view>
// js
import Xhyy from "@xhyyfe/wxmp-sdk";

let xhyy;
let resolver;

Page({
  data: {
    url: "",
  },
  onLoad() {
    xhyy = new Xhyy({
      // 当前小程序appid
      appid: "xxx",
      // 指定环境 test | production
      env: "test",
      // 指定版本 目前固定传 1.0.0
      version: "1.0.0",
      // 首页标题 可选 默认值"小猴云印"
      title: "xxx",
      // 首页banner图 可选 数组每一项为图片链接
      banner: ["xxx", "xxx"],
      // 主题配置 可选 json配置文件url
      theme: "https://xxx.com/theme.json"
    });

    // 当微应用页面发生跳转会触发entry回调
    xhyy.entry((url) => this.setData({ url }));

    // 事件监听委派
    // 若传入相应事件将覆盖微应用本身默认行为,可在事件处理函数中自定义处理
    xhyy.on({
      // 支付成功事件:result.orderId(订单ID)
      "pay-success": (result) => console.log(result),
      // 支付失败事件: error(失败原因) result.orderId(订单ID) result.isCancel(是否为用户取消支付)
      "pay-fail": (error, result) => console.log(error, result),
    });

    // 访问页面
    xhyy.access({
      // 从服务端接口获取授权码 详细说明见"授权"
      // 首次进入必传,授权成功后在一定时间内后续访问页面可不传
      code: "xxx",
      // 渠道id 可选
      channelId: "xxx",
      // 指定进入的页面(名称)
      // 目前支持直跳页面有:
      // files(文件列表),orders(订单列表),order(订单详情),address(地址列表),
      // price(价格列表),problem(常见问题),protocol(隐私协议)
      // pay-success(支付成功),pay-fail(支付失败)
      to: "files",
      // 通过对象形式传递,只有以下列出页面支持页面参数
      to: {
        // 订单列表
        name: "orders",
        params: {
          // 控制进入时,初始tab所在位置
          status_type: "pay", // ''(全部)  pay(待付款)  print(待打印)  express(待收货)  succ(已完成)  reissue(退款/售后)
        },
      },
      to: {
        // 订单详情
        name: "order",
        params: {
          // 订单号
          orderId: "xxx",
        },
      },
      to: {
        // 文件列表
        name: "files",
        params: {
          // 带入需要打印的文件,files(对象数组类型) name(带后缀文件名) url(文件链接)
          files: [{ name: "xxx.pdf", url: "https://xxx.com/xxx.pdf" }],
        },
      },
      to: {
        // 支付成功
        name: "pay-success",
        params: {
          // 订单号
          orderId: "xxx",
        },
      },
      to: {
        // 支付失败
        name: "pay-fail",
        params: {
          // 订单号 可选
          orderId: "xxx",
        },
      },
    });

    // 创建微应用消息解析器
    resolver = xhyy.createResolver();
  },
  onmessage(event) {
    resolver(event);
  },
});

注:此示例以简单方式实现,实际可将 xhyy 实例对象从单独模块导出,在 webview 页面导入使用。

注:此示例以微信小程序原生代码实现,如用框架或其他编译技术实现,可遇到不兼容问题,可采用混编方式。

四、授权

接入方实现

  1. 接入方需实现生成"code"的接口,作为授权获取用户信息的凭证。
  2. 接入方需实现授权接口,应用方通过"code"凭证调用授权接口获取用户信息。用户信息需包含以下字段:
字段名字段类型长度限制是否必填字段说明
errcodeint错误码,0 表示正确,其他错误码自定义
errmsgstring错误消息自定义
appidstring25小程序 appid
openidstring100用户 openid
mobilestring15用户手机号
nicknamestring25用户昵称
avatarstring255用户头像图片链接

注:在进入微应用前需提前获取以上必填字段相关信息。

1.8.0

2 months ago

1.7.0

4 months ago

1.6.2

4 months ago

1.6.0

4 months ago

1.4.2

4 months ago

1.5.0

4 months ago

1.4.1

4 months ago

1.4.0

4 months ago

1.3.0

4 months ago

1.2.0

10 months ago

1.1.0

10 months ago

1.0.0

11 months ago

0.7.0

11 months ago

0.6.1

11 months ago

0.6.0

11 months ago

0.5.0

11 months ago

0.4.0

11 months ago

0.3.0

11 months ago

0.2.0

11 months ago

0.1.0

11 months ago