不支持Promise
问题: 在 iOS 10 的系统中,测试版 和 体验版 的微信小程序不支持 Promise 函数,出现 Promise == null 的情况
F:修复 同客户端保持一致,移除 Promise,开发者需要自行引入兼容库 官方建议引入Promise库
这种转换只会帮助开发处理语法上问题,新的 ES6 的API如Promise等需要开发者自行引入 Polyfill 或者别的类库。 解决:
引用外部 js 到项目中,解决兼容性情况 使用 es6-promise 中的 es6-promise-min 6.17 KB (2.4 KB gzipped) 压缩版本。 下载后存放到项目目录中,在需要用到 Promise 函数时引入
import Promise from './es6-promise'
iPhone X 底部 tab 与小白条重叠
现象: iPhone X 设备中底部 Tab 会与 Home Indicator 横条(俗称 小白条 )重叠,这样在点击下方按钮时很容易误触发手势操作。
解决:
第一步:在 App.js 中获取设备信息
wx.getSystemInfo({
success: function(res) {
// res.model 包含设备信息,注意模拟器与真机环境中信息不一致
}
});
第二步:
在 页面wxml 中
// home.js
let app = getApp();
Page({
data: {
isIpx: app.globalData.isIpx ? true : false
}
});
<!-- home.wxml -->
<view class="button-group {{ isIpx ? 'fix-iphonex-button' : '' }}">
吸底按钮区域
</view>
/* home.wxss */
.fix-iphonex-button {
bottom: 68rpx !important;
}
.fix-iphonex-button::after {
content: '';
width: 100%;
height: 68rpx;
background-color: #fff;
position: fixed;
bottom: 0;
}
因为 iPhone X 的屏幕宽度和 iPhone 6 一样,都是 375 pt,但高度要比 iPhone 6 高了 145 pt。小程序中 750 rpx = 375 pt = 750 物理像素,换算即可。