微信小程序 navigator 组件跳转小程序或者小游戏(二)

嗯,开工,继续写。。。

extra-data 这个属性方法官方说:

当target="miniProgram"时有效,需要传递给目标小程序的数据,目标小程序可在 App.onLaunch(),App.onShow() 中获取到这份数据

其实,也就是只能获得固定的值,为什么这么说呢,因为我就踩了坑,一个巨大到用了我一下午时间还没整明白的坑。。汗!

我本意是这样的:

使用navigator组件跳转小程序的时候 通过点击事件bindtap='ceshi',把 a和b的值设置到data里的extra中,传值到目标小程序 ,

直接上代码:

wxml:

<navigator target="miniProgram" open-type="navigate" app-id="{{appid}}" path="" version="develop" bindtap='ceshi' extra-data="{{extra}}">打开绑定的小程序</navigator>



js:

data:{

    

appid:'wx108284235dd9e***',

extra:{

"aa":"0",

"bb":"0"

}

}



ceshi(){

var that = this

var str1 = 'extra.aa'

var str2 = 'extra.bb'

var a = 11111111

var b = 22222222



that.setData({

[str1]:a,

[str2]:b

})

},

本意是非常完美的,结果,尼玛在目标小程序里第一次根本获取不到传进来的值,第二次才能获取到,这是由于跳转和带参数同步进行的,设置值是第二步的事情,所以。。。

目前,我的解决办法就是:

<navigator target="miniProgram" open-type="navigate" app-id="{{item.app_id}}" path="pages/index/index?gmid={{item.id}}&uid={{uid}}&boxid={{boxid}}" version="release">打开绑定的小程序</navigator>

通过path里拼接实现动态传递参数,这样在目标小程序 的query里接受 ,extra-data里穿的参数是在referrerInfo里接受参数。两个接受参数的地方不一样。

OK。先这样。。。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏卡少编程之旅

React项目的服务端渲染改造(koa2+webpack3.11)

4157
来自专栏软件测试经验与教训

SoapUI测试WS接口实战

4229
来自专栏编程

AngularJS的模板和数据绑定详解

Angular应用中的模板只是一些HTML片段而已,我们可以从服务器上加载,或者在标签中定义,处理方式与所有其他静态资源相同。如果你需要UI组件,你可以在模板中...

2007
来自专栏人工智能LeadAI

优雅的在终端中编写Python

最早我也只是在服务器上编辑文件的时候用用vim来改改程序,并没有把vim当做自己的主力编辑器。但是偶然的一次机会需要改一个奇葩的输入文件的格式,用了下Vim的宏...

1721
来自专栏Jerry的SAP技术分享

SAP CRM和C4C的客户主数据修改历史记录查询

Change History assignment block里显示出了这条修改记录:

2622
来自专栏AhDung

【手记】让Fiddler抓取入站请求,或者叫用Fiddler做反向代理

最近在弄公众号开发,除了主动去调公众号接口,还存在公众号后台要反过来调你的情形,攻受转换一线间。对于回调的情况,想要知道对方是怎样来请求的很有必要。此前经常用F...

1733
来自专栏IMWeb前端团队

浏览器进程?线程?傻傻分不清楚!

本文作者:IMWeb coverguo 原文出处:IMWeb社区 未经同意,禁止转载 在生活中,浏览器和我们的工作和生活息息相关。做为前端开发,我们...

2619
来自专栏伪君子的梦呓

安装和配置 Eclipse

之前安装了 Java 并且配置好了 Java 的环境变量,现在来搞一下开发环境,下面就是下载安装和配置 Eclipse 的教程。

2661
来自专栏性能与架构

微信小程序入门示例

下面做一个非常简单的小程序(列出新闻列表,点击标题后进入详细页面)用来体会小程序的开发方式 ? 共有两个页面,一个是列表页,一个是详细页 通过这个示例,我们可以...

47814
来自专栏云飞学编程

Python爬虫技巧!网站有反爬?我们有selenium!

框架底层使用JavaScript模拟真实用户对浏览器进行操作。测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从...

3911

扫码关注云+社区