@zgfe/zg-sdk-uniapp-popup

1.0.10 • Public • Published

uni-app 弹窗SDK使用指南

配置安全域名

需要在小程序的安全域名设置中,添加诸葛域名为安全域名,默认域名为: https://u.zhugeapi.net

https://ubak.zhugeio.com

https://cep.zhugeio.com

注意:如果通过zhuge.load函数修改了默认数据上传地址和popup.usePlugin函数设置了api_base_url弹窗数据上传地址,则需要将修改后的数据上传地址,设置为安全域名。

诸葛分析 SDK

在使用弹窗 SDK 之前,请确保已经引用了诸葛 SDK。详细使用步骤请参照 uniapp SDK埋点集成使用帮助文档 uniapp SDK(npm地址https://www.npmjs.com/package/zg-sdk-uniapp

安装sdk

1.在小程序中执行命令安装sdk包

npm install --production zg-sdk-uniapp    //小程序sdk
npm install --production @zgfe/zg-sdk-uniapp-popup   //小程序弹窗sdk

引用sdk

首先您需要初始化诸葛分析 SDK,具体可参考:uniapp SDK埋点集成使用帮助文档uniapp SDK(https://docs.zhugeio.com/dev/uniapp.html)。 诸葛分析 SDK 初始化完成之后,再初始化诸葛弹窗 SDK。参考代码如下:

1.main.js文件头部,引入sdk

import zhuge from 'zg-sdk-uniapp'  // 小程序sdk
import popup from '@zgfe/zg-sdk-uniapp-popup'  //小程序弹窗sdk
import popupComponent from '@zgfe/zg-sdk-uniapp-popup/components/popup-component/popup-component'  // 小程序弹窗组件
Vue.component('popup-component', popupComponent)  //全局注册组件
Vue.mixin(mixins)
zhuge.load('AppKey', {
// load配置参数,具体参考[uniapp SDK](https://www.npmjs.com/package/zg-sdk-uniapp)
})

//弹窗初始化
//zhuge参数为诸葛sdk对象(必填)
popup.usePlugin(zhuge,{
  // 是否打印 log 日志
  show_log: true,
  interval_time:600000,// 会话超时时间(默认10分钟),单位:毫秒
  //  弹窗 SFO 地址为当前cep域名
  api_base_url: 'https://cep.zhugeio.com',//必填
  // 弹窗按钮打开链接的小程序页面地址,默认是/pages/webView/index,需要开发者自己开发
  webView:"/pages/webView/index",
  //监听弹窗的回调
  popup_listener:{
    /**
    * 对弹窗点击事件,绑定事件处理函数
    * @param {string} plan_id 活动id
    * @param {object} valueObj 弹窗内容对象(在 cep后台 中配置的弹窗内容)
    */ 
    onClick: function(plan_id, valueObj) {

    },
    /**
     * 弹窗关闭结束时,绑定事件处理函数
     * @param {string} plan_id 计划ID
     */
    onClose(plan_id){

    },
    /**
     * 弹窗加载成功时,绑定的事件处理函数
     * @param {string} plan_id 活动id
     */
    onLoadSuccess: function(plan_id) {

    },

    /**
     * 弹窗加载失败时,绑定的事件处理函数
     * @param {string} plan_id 活动id
     * @param {string} code 错误码
     * @param {string} message 错误信息
     */ 
    onLoadFailed: function(plan_id, code, message) {

    }
  }
});

小程序打开web链接的页面

默认配置地址为:/pages/webView/index

<template>
<view>
  <web-view :src="url"></web-view>
</view>
</template>
<script>
export default {
  data() {
    return {
      url:""
    }
  },
  onLoad(op){
    this.url=decodeURIComponent(op.url)// 需要decodeURIComponent进行解码
  },
}
</script>

手动拉取计划触达弹窗 this.zhuge.pullPlan()

弹窗sdk及组件注册完成后,默认十分钟拉取弹窗数据实现页面弹窗,如果有其他需求,可以修改会话时间(interval_time属性)增加弹窗响应频率或者手动调用this.zhuge.pullPlan(),实现实时弹窗响应。

强制拉取小程序弹窗方法:this.zhuge.pullPlan()

实名用户需要调用: this.zhuge.identify(cuid, props)

如果使用小程序弹窗sdk时,调用 zhuge.identify(cuid, props)实名认证的用户,用户属性中需要传入openid、unionid、微信小程序,具体方法使用参考uniapp SDK(https://docs.zhugeio.com/dev/uniapp.html)

  • cuid <string> 用户唯一标识
  • props <object> 用户属性

为了保持对用户的跟踪,你需要为他们记录一个识别码,可以使用手机号、email等唯一值来作为用户的识别码。另外,也可以在跟踪用户的时候, 记录用户更多的属性信息,便于你更了解你的用户
使用示例:

this.zhuge.identify(cuid, {
  'openId': openId,//必填
  'unionId': unionId,//非必填
  '微信小程序':小程序名称//必填 key值为,微信小程序、百度小程序、支付宝小程序、Android应用、iOS应用等。根据unapp最终打包的结果key取值不同,value值为名称(如果为小程序名称则取小程序名称,如果为Android应用、iOS应用则取应用名称)
})

实现弹窗回调

在使用 popup.usePlugin注册弹窗时,可以通过该函数第二个参数的 popup_listener 属性来设置对弹窗的回调监听。popup_listener 对象包含了 4 个回调函数

设置弹窗按钮点击回调

当用户点击弹窗上的按钮、图片或遮罩时,SDK 会触发 onClick 回调方法。

  /**
  * 对弹窗点击事件,绑定事件处理函数
  * @param {string} plan_id 活动id
  * @param {object} valueObj 弹窗内容对象(在 cep后台 中配置的弹窗内容)
  */ 
  onClick: function(plan_id, valueObj) {

  },

设置弹窗加载成功回调

在弹窗加载成功时,SDK 会调用 onLoadSuccess 回调方法。

  /**
   * 弹窗加载成功时,绑定的事件处理函数
   * @param {string} plan_id 活动id
   */
  onLoadSuccess: function(plan_id) {

  },

设置弹窗加载失败回调

在弹窗加载失败时,SDK 会调用 onLoadFailed 回调方法。

  /**
   * 弹窗加载失败时,绑定的事件处理函数
   * @param {string} plan_id 活动id
   * @param {string} code 错误码
   * @param {string} message 错误信息
   */ 
  onLoadFailed: function(plan_id, code, message) {

  }

设置弹窗关闭结束回调

在弹窗关闭结束后,SDK 会调用 onClose 回调方法。

  /**
   * 弹窗关闭结束时,绑定事件处理函数
   * @param {string} plan_id 计划ID
   */
  onClose(plan_id){

  },

目前弹窗内容对象中返回的点击事件类型即:valueObj.type 值有:点击图片元素、点击icon关闭按钮、点击button按钮、点击遮罩层。对应关系如下

序号 点击元素类型 value
1 点击遮罩层 mask
2 点击icon关闭按钮 close
3 点击图片 img
4 点击button按钮 button

目前弹窗内容对象中返回的按钮点击类型即:valueObj.actionType 值有:关闭弹窗、打开链接。对应关系如下

序号 类型 弹窗响应 value
1 关闭弹窗 点击后弹窗关闭 close
2 打开链接 点击后弹窗关闭 openlink
3 跳转当前小程序 点击后弹窗关闭,打开当前小程序指定路径 navigateTo
4 跳转其他小程序 点击后弹窗关闭,打开其他小程序指定路径 navigateToMiniProgram

引入弹窗组件

在小程序项目的所有需要渲染弹窗的页面中引入弹窗组件。例如在 index 页面引入:

main.js引入弹窗组件

  import popupComponent from '@zgfe/zg-sdk-uniapp-popup/components/popup-component/popup-component'  // 小程序弹窗组件路径
  Vue.component('popup-component', popupComponent)  //全局注册组件

在 index 页面使用组件

// index.vue
<popup-component id="zhuge_cep_popup"></popup-component>  // 把此组件放在 index.vue 的页面的任意位置

创建cep画布弹窗

首先在cep智能运营中创建画布,并且“触达方式”为小程序弹窗,发布完成后进行本地开发测试

Readme

Keywords

none

Package Sidebar

Install

npm i @zgfe/zg-sdk-uniapp-popup

Weekly Downloads

1

Version

1.0.10

License

ISC

Unpacked Size

505 kB

Total Files

8

Last publish

Collaborators

  • lijingyu1538
  • zhangshihao1
  • lijia-zg
  • heyuhang
  • haotao
  • dongyq
  • zhugefe