收藏
回答

【问题求解】navigator组件跳转小程序onLaunch拿不到 传值

框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
需求 navigator 微信iOS客户端 6.7.0 2.1.1

- 需求的场景描述(希望解决的问题)


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


问题: 在第一次打开App.onLaunch() 中拿不到值,在第二次打开 App.onShow()中可以拿到,请问官方大佬,如何处理?


代码


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

})

},


回答关注问题邀请回答
收藏

1 个回答

  • 2018-07-06

    是不是因为setData是一个异步方法,当你点击跳转的时候,setData还没设置好就去跳转了,此时是没有数据的。

    extra带个固定值吧

    2018-07-06
    有用
    回复 3
    • 田超
      田超
      2018-07-06

      有可能,兄弟,怎么解决这个问题呢

      2018-07-06
      回复
    • 2018-07-06回复田超

      我们有两个小程序,现在需要从A跳转到B,在B中检测是否是从A来的,如果是,弹窗提示领取优惠券。


      现在是extra-data中加了一个固定的字符串,跳转过去B去检测,没有做你这样动态改变值之后再跳转

      2018-07-06
      回复
    • 田超
      田超
      2018-07-06回复

      好的,谢谢

      2018-07-06
      回复
登录 后发表内容