apicloud拉起小程序并传递参数的方法示例


Posted in Javascript onNovember 21, 2018

最近工作中遇到一个需求:App拉起微信小程序。App是用APICloud开发的。查阅APICloud文档发现 端API->开放SDK->wx模块下有launchMiniProgram方法可以实现官方文档

于是在项目中添加wx模块。

官方示例代码:

var wx = api.require('wx');
wx.launchMiniProgram({
  apiKey: '', // 字符串,微信开放平台获取的appid, 不传则从当前widget的config.xml中读取
  miniProgramType: 'test', // 字符串,['test', 'preview', 'release'](开发版,体验版,正式版)默认test
  userName: '', // 字符串,小程序的原始ID
  path: '', // 字符串,拉起小程序页面的可带参数路径,不填默认拉起小程序首页
}, function(ret, err) {
  if (ret.status) {
    alert('成功');
  } else {
    alert(err.code);
  }
});

按照官方文档配置发现只能跳转到微信,不能拉起小程序。

apicloud App端代码:

config.xml文件小程序有关配置如下:

<feature name="wx">
  <param name="urlScheme" value="wx1007b2********68"/>
  <param name="apiKey" value="wx1007b2********68"/>
  <param name="apiSecret" value="3******67176****39244b********25"/>
 </feature>

拉起小程序相关代码:

function launchMini () {
  var wx = api.require('wx')
  wx.launchMiniProgram({
    // apiKey: '', // 不知道是因为配置文件中已经配置过了还是什么原因,带上该项参数仅能打开微信,无法拉起小程序,注释后成功拉起小程序
    miniProgramType: 'preview',
    userName: 'gh_******',
    path: 'pages/index/index?from=app666' // 传递参数from 值为 app666
  }, function(ret, err) {
    if (ret.status) {
      alert('成功')
    } else {
      alert(err.code)
    }
  }
}

小程序端代码:

index.js

onLoad: function (options) {
  console.log(options)
  console.log(options.from) // 'app666'
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript面向对象之静态与非静态类
Feb 03 Javascript
jQuery实现鼠标单击网页文字后在文本框显示的方法
May 06 Javascript
Angular之指令Directive用法详解
Mar 01 Javascript
node中koa中间件机制详解
Aug 22 Javascript
webstorm添加*.vue文件支持
May 08 Javascript
微信小程序搭建(mpvue+mpvue-weui+fly.js)的详细步骤
Sep 18 Javascript
vue中v-for循环给标签属性赋值的方法
Oct 18 Javascript
JavaScript中.min.js和.js文件的区别讲解
Feb 13 Javascript
vue计算属性computed的使用方法示例
Mar 13 Javascript
监听element-ui table滚动事件的方法
Mar 26 Javascript
koa2的中间件功能及应用示例
Mar 05 Javascript
教你部署vue项目到docker
Apr 05 Vue.js
vue中组件的过渡动画及实现代码
Nov 21 #Javascript
详解promise.then,process.nextTick, setTimeout 以及 setImmediate的执行顺序
Nov 21 #Javascript
Nuxt.js之自动路由原理的实现方法
Nov 21 #Javascript
nuxt.js中间件实现拦截权限判断的方法
Nov 21 #Javascript
Nuxt.js SSR与权限验证的实现
Nov 21 #Javascript
详解nuxt路由鉴权(express模板)
Nov 21 #Javascript
使用vue-cli webpack 快速搭建项目的代码
Nov 21 #Javascript
You might like
如何在WIN2K下安装PHP4.04
2006/10/09 PHP
php5中类的学习
2008/03/28 PHP
PHP提取中文首字母
2008/04/09 PHP
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
2013/06/25 PHP
PHP实现小偷程序实例
2016/10/31 PHP
PHP实现上传图片到数据库并显示输出的方法
2018/05/31 PHP
一些易混淆且不常用的属性,希望有用
2007/01/29 Javascript
JS 类型转换常见方法小结
2010/05/31 Javascript
关于flash遮盖div浮动层的解决方法
2010/07/17 Javascript
javascript将数组插入到另一个数组中的代码
2013/01/10 Javascript
JS实现切换标签页效果实例代码
2013/11/01 Javascript
查询json的数据结构的8种方式简介
2014/03/10 Javascript
JavaScript中switch判断容易犯错的一个细节
2014/08/27 Javascript
javascript中eval函数用法分析
2015/04/25 Javascript
js实现跨域的多种方法
2015/12/25 Javascript
bootstrap datetimepicker日期插件使用方法
2017/01/13 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
2018/07/25 Javascript
js实现鼠标点击页面弹出自定义文字效果
2019/12/24 Javascript
[38:23]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第一场
2014/05/24 DOTA
[01:15:16]DOTA2-DPC中国联赛 正赛 Elephant vs Aster BO3 第一场 1月26日
2021/03/11 DOTA
在Python下尝试多线程编程
2015/04/28 Python
Python实现的科学计算器功能示例
2017/08/04 Python
python实现报表自动化详解
2017/11/16 Python
Python生成8位随机字符串的方法分析
2017/12/05 Python
Python离线安装PIL 模块的方法
2019/01/08 Python
Python常见数据类型转换操作示例
2019/05/08 Python
Django之PopUp的具体实现方法
2019/08/31 Python
一文带你掌握Pyecharts地理数据可视化的方法
2021/02/06 Python
Servlet方面面试题
2016/09/28 面试题
生产车间主管岗位职责
2013/12/28 职场文书
中考学习决心书
2015/02/04 职场文书
运动会宣传稿50字
2015/07/23 职场文书
2016年清明节红领巾广播稿
2015/12/17 职场文书
OpenCV绘制圆端矩形的示例代码
2021/08/30 Python
详解Python内置模块Collections
2022/03/22 Python