小程序日常排坑

1.当页面需要设置导航栏时,需要用fixed定位。如果页面是整个scroll-view,最好不要把导航栏放到scroll-view标签中,否则在ios系统中会出现导航内容无法显示问题;

2.小程序配置的底部导航,自己写的遮罩是无法遮住的,所以有些时候最好自己写底部导航,但是自己写底部导航时可以用wx.redirect来进行页面跳转,这样跳转和配置的导航页面跳转效果一致;

3.scroll-view问题,有些页面需要滚动加载列表,对scroll-view高度有一定的要求,一开始是直接定的多少rpx,后来在iphonex或其他全面屏手机上发现页面高度有问题。后来用wx.getSystemInfo获取设备高度来对scroll-view进行高度设置可以解决这一问题;

4.想要控制小程序自带的返回可以通过在onUnload方法里面写页面跳转方法来实现;

5.地理位置授权拒绝后再次调用授权问题

地理位置授权拒绝后如果不做任何设置,会一直无法进行地理位置重新授权,除非清理缓存;为了解决这个问题,在拒绝授权后可以调用wx.openSetting方法;例:

getSetting:function(){
  var that=this;
  wx.getSetting({
    success:res=>{
      if (!res.authSetting['scope.userLocation']) {//未进行位置授权
        wx.authorize({//进行地理位置授权
          scope: 'scope.userLocation',
          success(res) {
            console.log('获取地理位置授权成功');
            wx.getLocation({
              type: 'wgs84',
              success: function (res) {
              }
            })

          },
          fail() {
            that.openConfirm();
          }
        })
      }
    }
  })
},
openConfirm: function () {
  wx.showModal({
    content: '检测到您未打开位置权限,是否去设置打开?',
    confirmText: "确认",
    cancelText: "取消",
    success: function (res) {
      console.log(res);
      //点击“确认”时打开设置页面
      if (res.confirm) {
        console.log('用户点击确认')
        wx.openSetting({
          success: (res) => {
            console.log(res)
           }
        })
      } else {
        console.log('用户点击取消')
      }
    }
  });
},

这是就会出现小程序日常排坑

打开使用我的地理位置即可