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 addBookmark 加入收藏 多浏览器兼容
Aug 15 Javascript
JavaScript 图像动画的小demo
May 23 Javascript
JS按字节截取字符长度实例
Nov 20 Javascript
Javascript基础教程之变量
Jan 18 Javascript
javascript实现tab切换的四种方法
Nov 05 Javascript
jQuery中事件与动画的总结分享
May 24 Javascript
jquery获取所有选中的checkbox实现代码
May 26 Javascript
jQuery联动日历的实例解析
Dec 02 Javascript
js轮播图的插件化封装详解
Jul 17 Javascript
详解Angular2学习笔记之Html属性绑定
Jan 03 Javascript
javascript 易错知识点实例小结
Apr 25 Javascript
Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互的实例
Nov 18 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
收音机鉴频器对声音的影响和频偏分析
2021/03/02 无线电
PHP 网络开发详解之远程文件包含漏洞
2010/04/25 PHP
php在window iis的莫名问题的测试方法
2013/05/14 PHP
php中HTTP_REFERER函数用法实例
2014/11/21 PHP
PHP日期函数date格式化UNIX时间的方法
2015/03/19 PHP
php简单获取目录列表的方法
2015/03/24 PHP
php array_values 返回数组的所有值详解及实例
2016/11/12 PHP
JQuery Tab选项卡效果代码改进版
2010/04/01 Javascript
juqery 学习之四 筛选过滤
2010/11/30 Javascript
ASP.NET jQuery 实例8 (动态添加内容到DropDownList)
2012/02/03 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
2013/02/01 Javascript
Jquery多选下拉列表插件jquery multiselect功能介绍及使用
2013/05/24 Javascript
JQuery中form验证出错信息的查看方法
2013/10/08 Javascript
javascript 获取iframe里页面中元素值的方法
2014/02/17 Javascript
Javascript之Number对象介绍
2016/06/07 Javascript
js 能实现监听F5页面刷新子iframe 而父页面不刷新的方法
2016/11/09 Javascript
JavaScript中错误正确处理方式小结你用对了吗
2017/10/10 Javascript
浅谈如何使用 webpack 优化资源
2017/10/20 Javascript
JavaScript使用indexOf()实现数组去重的方法分析
2018/09/04 Javascript
JS实现的tab页切换效果完整示例
2018/12/18 Javascript
让Python代码更快运行的5种方法
2015/06/21 Python
Python设计模式之抽象工厂模式
2016/08/25 Python
如何用Python破解wifi密码过程详解
2019/07/12 Python
Pandas数据离散化原理及实例解析
2019/11/16 Python
python中def是做什么的
2020/06/10 Python
Python如何获取文件路径/目录
2020/09/22 Python
切尔西足球俱乐部官方网上商店:Chelsea FC
2019/06/17 全球购物
Java方面的关于数组和继承的笔面试题
2015/09/18 面试题
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
2016/08/18 面试题
机械制造与自动化应届生求职信
2013/11/16 职场文书
内业资料员岗位职责
2014/01/04 职场文书
天鹅的故事教学反思
2014/02/04 职场文书
水污染治理工程专业自荐信
2014/06/21 职场文书
检查机关领导群众路线教育实践活动个人整改措施
2014/10/28 职场文书
学长教您写论文:经验总结
2019/07/09 职场文书
Apache Pulsar集群搭建部署详细过程
2022/02/12 Servers