美文网首页
小程序踩坑合集

小程序踩坑合集

作者: 江疏影子 | 来源:发表于2019-06-21 18:02 被阅读0次
    1.触发事件修改data

    在小程序中 触发事件的时候是不能直接调用this.setData({})来修改状态的,必须要定义一个that来保存this的指向,然后再进行修改。

    2.引用其他的page

    比如index引用另一个封装好的组件,首先需要在index.json文件中写入

    {
      "usingComponents": {
        "sliders": "../sliders/sliders"
      }
    }
    

    然后在页面中使用<sliders></sliders>

    3.video标签添加封面
    <video 
      src=" " //视频的路径
      class='installVideo'
      poster=" " //封面路径 controls必须设置为ture 否则封面会失效 在手机上预览没问题,但是在开发者工具上有问题
    ></video>
    
    4.wx.navigateToMiniProgram方法

    打开另一个小程序

    参数列表:
    appid:要打开的小程序 appId
    path:打开的页面路径,如果为空则打开首页。? 后面的部分会成为 query,可以在小程序生命周期函数中获取。
    extraData:需要传递给目标小程序的数据,目标小程序可在 App.onLaunchApp.onShow 中获取到这份数据。

    在小程序中模拟操作

    第一步:添加编译形式
    第二步
    第三步:在app.jsonShow的生命周期函数获取
    onShow:function(options){
        console.log(options)
      }
    
    打印
    5.使用video标签报渲染层网络层错误

    暂时没发现特别原因,只是因为在src赋值的时候使用了https,改为了http之后就正确了

    判断是否为iphonex系列手机

    const that=this;
    wx.getSystemInfo({
       success:function(res){
            if (res.model === "iPhone X" || res.model === "iPhone XS" || res.model === "iPhone XR" || res.model ==="iPhone XS Max"){
              that.setData({
                isIphonex:true
              })
            }
          }
        })
    

    每个页面的分享

    在建立每个page的时候会自动创建一个名为onShareAppMessage函数,有的话则可以分享,没有则不可以分享。

    小程序定位
    1.在app.json中写入

    "permission": {
      "scope.userLocation": {
        "desc": "你的位置信息将用于小程序位置接口的效果展示" 
      }
    }
    

    2.在需要的页面中写入

    wx.getLocation({
      type: 'wgs84',
      success(res) {
        const wd = res.latitude;
        const jd = res.longitude;
        that.setData({
          wd,
          jd,
        })
      }
    })
    

    type说明:wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标

    相关文章

      网友评论

          本文标题:小程序踩坑合集

          本文链接:https://www.haomeiwen.com/subject/daesfctx.html