1.2.2 • Published 2 months ago

shushangyun-masdk v1.2.2

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

shushangyun-masdk

数商云MA 小程序端sdk

  • 触发功能
  • 投放功能

安装

  1. 安装依赖:进到项目根目录运行以下命令
npm install --save shushangyun-masdk
  1. 使用用微信开发者工具点击【工具】菜单中的【构建npm】 相关文档请查看:https://developers.weixin.qq.com/miniprogram/dev/devtools/npm.html

提示:如果提示找不到目录的错误,可以先在项目根目录运行 npm init命令

以上步骤如果正常执行,则可以看到项目会多了一个 miniprogram_npm/shushangyun-masdk的文件夹,结构如下:

|--shushangyun-masdk
|   |--components
|       |--banner.js
|       |--banner.json
|       |--banner.wxml
|       |--banner.wxss
|       |--trigger.js
|       |--trigger.json
|       |--trigger.wxml
|       |--trigger.wxss
|   |--pages
|       |--webview.js
|       |--webview.json
|       |--webview.wxml
|       |--webview.wxss
|   |--inxex.js

sdk包里有两个Comonent: banner和trigger,还有一个Page:webview

index.js是sdk的核心文件

使用

可以查看miniprogram_dev目录里的demo,注意:demo中的app.json文件中的配置与正式使用的目录结构不同,正式使用请参考下面的配置

1.在项目的app.json中引用组件和配置页面

"pages":[ //在pages数组中增加下面一行
    ...
    "miniprogram_npm/shushangyun-masdk/pages/webview"
 ],
"usingComponents": { //在usingCompnents对象中加下以下两行
    ...
     "banner":"miniprogram_npm/shushangyun-masdk/components/banner",
     "trigger":"miniprogram_npm/shushangyun-masdk/components/trigger"
 }

2.初始化sdk, 建议在项目的app.js中引入sdk核心文件并初始化(即一打开小程序就初始化)

//引入sdk文件,并把它加进App对象中。在其他页面中想要引入sdk,可以同样使用以下方式
const masdk = require('shushangyun-masdk');


App({
    data: {},
    onLaunch: function() {

        //初始化sdk,应该在小程序打开的时候就初始化。
        masdk.init({
            appKey:"",//应用key,必填
            appSecret:"",//应用secret,必填
            debug:true,//是否开启debug模式,选填,默认为fasle
            domain:null,//服务器地址,一般不用配置此项,此项只针对私有化部署客户       webviewUrl:null,//用来打开活动的页面,选填,默认值是组件提供的webview页面:miniprogram_npm/shushangyun-masdk/pages/webview,如果有需要,此项指针对需要使用自己定义的页面去打开活动的开发者
        })

        //登录一个测试用户
        //上传用户信息,这个方法应该在用户登录之后调用,此例子直接在onLaunch方法里调用了。正式使用时应该在登录用户(获取到用户信息)时使用
        masdk.infosUser({
          userid: "user12345",
          sex: "男",
          province: "广东省"
        });

      }
})

3.使用触发功能(trigger)和投放功能(banner)

在需要用到触发功能的页面中引入sdk,比如demo页面。

demo.js代码:

const masdk = require('shushangyun-masdk');

Page({

  data: {
    param: {},//触发返回的数据
    debug: [],
    swiperOptoins: { //投放组件轮播图的配置,配置项请参考小程序的swiper组件
      indicatorDots: true,
      displayMultipleItems: 1
    }
  },

  onShow: function () {
  },

  triggerDemo(){

    //调用sdk的trigger方法
    masdk.trigger({
      userid: '1', //触发用户id
      eventKey: 'datu'//事件key
    }).then((res)=> {
      this.setData({
        param: res.data //触发成功后,把返回的数据赋值给param参数(wxml文件引入trigger组件传入此参数)
      })
    })
  }
})

demo.wxml代码

<button size="mini" type="primary" plain="true" bindtap="triggerDemo">触发Demo</button>


<!--banner组件设置的地方就会显示投放的数据-->
<banner position-key="abc" swiper-options="{{swiperOptoins}}" default-image="/public/down.png"/>


<!--引入这个trigger组件显示触发图标-->
<trigger param="{{param}}"/>

触发和投放的高级用法

除上了面的用法之外,某些开发者需要个性化的处理投放和触发结果。这种情况可以直接使用sdk的方法来获取投放和触发的数据,然后自行处理数据。

1.触发接口的调用:

    //和普通用法基本一致。只是不使用sdk提供的trigger组件。
    masdk.trigger({
        userid: '1', //触发用户id
        eventKey: 'datu'//事件key
    }).then((res)=> {
        //在这里拿到res.data后,自行处理
    })

2.投放接口的调用:

    masdk.banner({
        userid: '1', //触发用户id
        positionKey: 'banner'
    }).then((res)=> {
        //在这里拿到res.data后,自行处理
    })

sdk各个方法参数说明:

1.2.2

2 months ago

1.1.7

3 years ago

1.2.1

3 years ago

1.2.0

4 years ago

1.1.6

5 years ago

1.1.5

5 years ago

1.1.4

5 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago

1.0.0

5 years ago