收藏
回答

web-view传值bug???

问题模块 框架类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 web-view 微信iOS客户端 6.6.2 1.9.1


有一个新闻列表页面,点击某条新闻跳转到新闻详情页面,传参数id,有时正常有时id为空详情就加载不了,列表页面跳转到详情的js逻辑

godetail: function (event) {

   var aid = event.currentTarget.dataset.testid

   if(aid){

     wx.navigateTo({

       url: '../my/detail?aid=' + aid

   })

   }

   

 }


详情页面 detail.html

<web-view src="https://testserver.com/Wxapp/Show/index/id/{{id}}">web-view>

详情页面detail.js

const app = getApp()

Page({

 /** 页面的初始数据   */

 data: {

   id: ''

  },

   onLoad: function (option) {

       this.setData({

         id: option.aid

      })

   })

})


列表点击到详情,在返回到列表在点击进详情,反复进入详情页面,在详情webview加载的web页面上输出id的值有时就为空。感觉上像是先渲染加载了webview才执行的小程序页面onLoad方法。


这个问题有什么解决方法??? 急


最后一次编辑于  2018-02-22  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

6 个回答

  • 吴迦南1
    吴迦南1
    2018-02-04

    同问这个问题,是bug还是 微信web-view不支持传值的方式?

    2018-02-04
    赞同
    回复
  • 吴迦南1
    吴迦南1
    2018-02-05

    参见这个答案:https://developers.weixin.qq.com/blogdetail?action=get_post_info&docid=000068e3adc868f0244604eb95b400&highline=webview&token=&lang=zh_CN&comment_lvl=1&comment_lvl=3

    2018-02-05
    赞同
    回复
  • 张晓天
    张晓天
    2018-02-10

    现在我是这么搞得,在详情页 detail.js 的初始化data中加了一个标识变量,id赋值时,标识变量改为true

    const app = getApp()

    Page({

     /** 页面的初始数据   */

     data: {

       id: '',

        flag:false, // 标识变量

      },

        onLoad: function (option) {

            this.setData({

             id: option.aid,

              flag:true,

          })

        })

    })


    wxml页面这么写的,flag==true时才会去渲染页面

    <view wx:if="{{flag}}">

     <web-view src="https://test.com/Wxapp/Show/index/id/{{id}}"></web-view>

    </view>

    <view style="text-align:center;" wx:else>

     <image src='../common/images/timg.gif' style='margin-top:40%;width:177px;height:175px;'></image>

    </view>


    比较笨的方法,虽然能保证每次详情页面能够有参数值,但是在列表页面跳转详情页面的时候中间有空白页面停顿的效果,体验不好。在详情页面,flag==false时有个loading提示的图片,不过基本没什么卵用,根本就不会看的这个loading就跳转过去了

    2018-02-10
    赞同
    回复
  • 晚风徐·徐 คิดถึง
    晚风徐·徐 คิดถึง
    2018-04-26

    楼上的,官方对于web-view 目前的文档显示,web-view 会自动铺满全屏,并覆盖其它组件,所以你下面的view其实是没有用的。

    2018-04-26
    赞同
    回复 1
    • 张晓天
      张晓天
      07-15
      webview正常显示的时候,我是希望view不起任何作用;当webview传值失败后,我就不加载webview了
      07-15
      赞同
      回复
  • 小天🙂
    小天🙂
    2018-05-22
    mark
    2018-05-22
    赞同
    回复