收藏
回答

如何把路径参数传递到web-view?

wxml 文件

<web-view src="https://www.***.com/"></web-view>

这是js文件

  onLoad: function (options) {

    console.log("options")

    var that = this;

    that.setData({

      id: options

    })

    console.log(options)

  },

获取到的 路径参数

怎么样才能把获取到的路径参数传递到web-view

请大神帮忙写完整代码,小程序纯属小白一点也没搞懂

这个功能就是打开这个页面传递了一个id,然和网址+id直接访问H5页面

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

3 个回答

  • chh
    chh
    2021-04-23

    js中给url动态赋值,参数拼接在url后面就行

    .wxml

    <web-view src="{{url}}"></web-view>
    

    .js

     this.setData({
        url: `https://www.***.com?id=${id}` 
     })
    
    2021-04-23
    有用 2
    回复 5
    • chh
      chh
      2021-04-23
      如果是params的参数,
      2021-04-23
      2
      回复
    • 人生几渡
      人生几渡
      2021-04-23
      谢谢搞定了
      2021-04-23
      回复
    • 人生几渡
      人生几渡
      2021-04-23
      getOpenId: function() { // 获取用户的唯一标识
          wx.login({
            success(res){
              console.log('code====',res.code);
              wx.request({
                url: 'https://api.weixin.qq.com/sns/jscode2session',
                data:{
                  appid: appId,
                  secret: appSecret,
                  js_code: res.code,
                  grant_type:'authorization_code'
                },
                method:"GET",
                success(res){
                  console.log('openid=====',res.data.unionid); // 得到openid
                  console.log('session_key====', res.data.session_key); // 得到 session_key
                  let url = 'https://www.****?cm=' + res.data.unionid;
                  wx.setStorageSync('url', url);
                  wx.navigateTo({
                    url: 'home?user_id='+res.data.unionid+'#cm#'
                  })
                }
              })
            }
          })
        },


      这里获取到了 微信openid 怎么同时获取微信昵称和头像一起传递到 url
      2021-04-23
      回复
    • chh
      chh
      2021-04-23回复人生几渡
      获取昵称和头像要通过另外一个接口getUserProfile,这个接口有个弹窗授权,点击后可以获取到昵称和头像。
      2021-04-23
      回复
    • chh
      chh
      2021-04-23回复chh
      传递的话还是通过this.setData,注意this的指向问题,可以在函数内部第一行写上const that = this,通过函数的作用域查找到正确的this,然后用that.setData即可。
      2021-04-23
      回复
  • 袁康
    袁康
    2021-04-23

    2021-04-23
    有用 1
    回复 3
    • 人生几渡
      人生几渡
      2021-04-23
      谢谢搞定了
      2021-04-23
      回复
    • 人生几渡
      人生几渡
      2021-04-23
      请问大神
      getOpenId: function() { // 获取用户的唯一标识
          wx.login({
            success(res){
              console.log('code====',res.code);
              wx.request({
                url: 'https://api.weixin.qq.com/sns/jscode2session',
                data:{
                  appid: appId,
                  secret: appSecret,
                  js_code: res.code,
                  grant_type:'authorization_code'
                },
                method:"GET",
                success(res){
                  console.log('openid=====',res.data.unionid); // 得到openid
                  console.log('session_key====', res.data.session_key); // 得到 session_key
                  let url = 'https://www.****?cm=' + res.data.unionid;
                  wx.setStorageSync('url', url);
                  wx.navigateTo({
                    url: 'home?user_id='+res.data.unionid+'#cm#'
                  })
                }
              })
            }
          })
        },
      这里获取到了 微信openid 怎么同时获取微信昵称和头像一起传递到 url
      2021-04-23
      回复
    • 袁康
      袁康
      2021-04-23回复人生几渡
      用wx.getUserInfo 获取用户信息 在存到app. globalData中,你直接在webview页面取app. globalData中的用户信息
      2021-04-23
      回复
  • 朝酒晚舞
    朝酒晚舞
    2021-04-23

    前端调用 jscode2session????????????????

    2021-04-23
    有用
    回复 3
    • Z
      Z
      2021-04-23
      线上就给他报错 😏
      2021-04-23
      回复
    • 朝酒晚舞
      朝酒晚舞
      2021-04-23回复Z
      不存在。
      2021-04-23
      回复
    • Z
      Z
      2021-04-23回复朝酒晚舞
      这个域名配置不了 肯定没反应啊
      2021-04-23
      回复
登录 后发表内容