convertlab-cpm-sdk-for-wx

0.0.7 • Public • Published

cpm-consent for 微信小程序

CPM 用户同意授权 Dialog 组件 、授权详情中心 Center 组件 SDK。

引入

原生组件使用

  • 点击下载 SDK,将该项目复制到 components 小程序组件目录下
  • 在需要引入的page对应 json 中,配置组件
"usingComponents": {
    "dialog": "/components/convertlab-cpm-sdk-for-wx/components/dialog",
    "center": "/components/convertlab-cpm-sdk-for-wx/components/center"
  }

npm 使用

  • npm 安装组件
npm install --save convertlab-cpm-sdk-for-wx
  • 进入小程序开发工具 工具 -> 构建npm,点击构建

使用

Dialog 组件

  • json 文件中引入组件
"usingComponents": {
    "dialog": "/components/convertlab-cpm-sdk-for-wx/components/dialog",
  }

引入地址根据实际引入路径为主,组件路径注意是在:sdk 目录/components/dialog 下

  • wxml 文件中引入组件

Dialog 组件wxml文件引入

  <dialog id="cl_dialog"  bindconfirm="onDialogConfirm" bindrefuse ="onDialogRefuse" bindopenurl="onOpenUrl"></center>

注意组件使用需要设置 id,在后面控制器中需要传入该 id

  • js引入组件控制器
// 引入控制器,控制器位于SDK根路径/dialog.js
const Dialog = require("../../components/consents/dialog.js");

// 在需要显示的地方创建对应的控制

onLoad: function(options) {
  // Dialog 组件使用方式
  ...
       // 初始化组件控制器
       const dialog = Dialog(this, // 传入 Page 上下文对象
              '#cl_dialog', // css选择器,需要指定Page wxml中需要绑定的 dialog 组件
              {
                  tenantId: 1, // [必须] 租户id, 可在cpm后台中c查看当前租户信息
                  identityId: '微信小程序用户openid', // [必须]用户身份标识openId,该信息需要用户自身获得用户授权信息
                  appId: '微信小程序id', // [可选]初始化appId,如未提供控制器将尝试使用wxid
                  baseUrl: 'https://cpm-api.convertlab.com', // [可选]如果需要指定私服链接,可覆盖改参数,默认 cpm-api.convertlab.com
              }
      )
  ...
      // 显示组件
      dialog.show(this, //[可选] 传入 Page 上下文对象,可再次对目标控件进行选择定位,如果未提供,则默认使用构造时传入的Page上下文
       {
            onConfirm() {
               // 弹框选择确认,如返回值为true,则阻止弹框关闭
            },
            onRefuse() {
              // 弹框选择拒绝,如返回值为true,则阻止弹框关闭
            }
        });
      // 关闭组件
      dialog.close()
}

Center 组件

  • json 文件中引入组件
"usingComponents": {
    "center": "/components/convertlab-cpm-sdk-for-wx/components/center",
  }

引入地址根据实际引入路径为主,组件路径注意是在:sdk 目录/components/center 下

  • Center 组件wxml文件引入
 <center id="cl_center"  bindconfirm="onCenteronfirm" bindopenurl="onCenterOpenUrl"></center>

注意组件使用需要设置 id,在后面控制器中需要传入该 id

  • js引入组件控制器
// 引入控制,控制器位于SDK根路径/center.js
const Center = require("../../components/consents/center.js");

// 在需要显示的地方创建对应的控制

onLoad: function(options) {
  // Center 组件使用方式
  ...
       // 初始化组件控制器
       const center = Center(this, // 传入 Page 上下文对象
                '#cl_center',// css选择器,需要指定Page wxml中需要绑定的 Center 组件
                {
                 tenantId: 1, // [必须] 租户id, 可在cpm后台中查看当前租户信息
                  identityId: '微信小程序用户openid', // [必须]用户身份标识openId,该信息需要用户自身获得用户授权信息
                  appId: '微信小程序id', // [可选]初始化appId,如未提供控制器将尝试使用wxid
                  baseUrl: 'https://cpm-api.convertlab.com', // [可选]如果需要指定私服链接,可覆盖改参数,默认 cpm-api.convertlab.com
                }
      )
  ...
      // 显示组件
      center.show(this,  //[可选] 传入 Page 上下文对象,可再次对目标控件进行选择定位,如果未提供,则要求在构造时进行选择器绑定过
            {
            onConfirm(cosents) {
               // 发生保存时响应,cosents 返回保存信息, 如返回值为true,则阻止中心关闭
            }

        });
       // 关闭组件
      center.close()
}

API 说明

Dialog

事件

事件 说明
confirm 确认事件
refuse 拒绝事件
load 组件配置加载完成
openurl 如果展示组件中存在超链接请求,需要用户实现事件响应,否则将无法打开

例子:

 <dialog id="cl_dialog"  bindconfirm="onDialogConfirm"
 bindrefuse="onDialogRefuse" bindload="onDialogLoad" bindopenurl="onDialogOpenUrl" ></center>

控件属性

属性名 说明
closeOnClickModal 模态模式控制,默认为 true,设置点击弹框外阴影是否关闭弹框

例子: 模态弹框,不允许弹框未响应按钮前关闭

 <dialog id="cl_dialog"  closeOnClickModal="{{false}}" ></center>

控制器初始化属性

控制获取时需要绑定对应控制组件以及上下文

事件 说明
tenantId 必须属性,当前租户信息,可以从 cpm 后台中获取
identityId 必须属性,当前用户微信 openid,用于识别用户身份信息
appId 可选,默认会读取当前小程序微信 id
baseUrl 可选,默认 https://cpm-api.convertlab.com,如果为私部环境则需要设置,目前url需要咨询相关人员
onConfirm 可选,同 confirm 事件,确定按钮发生响应触发
onRefuse 可选,同 refuse 事件,拒绝按钮发生响应触发
onLoad 可选,同 load 事件,组件完成配置初始时回调

控制器方法

方法 说明
show 显示组件
close 关闭组件
setData 设置属性

Center

事件

事件 说明
confirm 确认事件
load 组件配置加载完成
openurl 如果展示组件中存在超链接请求,需要用户实现事件响应,否则将无法打开

例子:

 <center id="cl_center"  bindconfirm="onCenterConfirm"  bindload="onCenterLoad" bindopenurl="onCenterOpenUrl" ></center>

控制器初始化属性

控制获取时需要绑定对应控制组件以及上下文

事件 说明
tenantId 必须属性,当前租户信息,可以从 cpm 后台中获取
identityId 必须属性,当前用户微信 openid,用于识别用户身份信息
appId 可选,默认会读取当前小程序微信 id
baseUrl 可选,默认 https://cpm-api.convertlab.com,如果为私部环境则需要设置,目前url需要咨询相关人员
onConfirm 可选,同 confirm 事件,保存按钮响应时回调
onLoad 可选,同 load 事件,组件完成配置初始时回调

控制器方法

方法 说明
show 显示组件
close 关闭组件
setData 设置属性

QA

  • 用户 openid 获取是否是必须? 用户身份标识是 sdk 必须的信息,如果没有该标识 SDK 将无法稳定记录用户授权状态。

Package Sidebar

Install

npm i convertlab-cpm-sdk-for-wx

Weekly Downloads

3

Version

0.0.7

License

MIT

Unpacked Size

534 kB

Total Files

169

Last publish

Collaborators

  • kefengong