1、虽然小程序可以用es6的语法,但是模板语法``是不支持的
2、获得设备信息:wx.getSystemInfo({
success: function (res) {
}
});
res里面的:model==》当前设备名字:如iphone 6s
screenHeight、screenWidth、windowHeight、windowWidth
system===>设备系统如:‘ios 10.1.1'
version==》微信版本号
3、 用户行为预测:在首页就调用获得当前经纬度
wx.getLocation({
type: 'wgs84',
success: function (res) {
var latitude = res.latitude//纬度
var longitude = res.longitude//精度
}
})
打开微信内置地图
wx.openLocation({
longitude: Number(longitude),
latitude: Number(latitude),
name: name
})
wx.setStorageSync设置sotrage缓存,多页面共享
wx.getStorageSync读取storage内内容
4、在附近门店拨打电话
wx.makePhoneCall({
phoneNumber: phoneNum, //电话号码
success: function () {
console.log("拨打电话成功!")
},
fail: function () {
console.log("拨打电话失败!")
}
})
5、如果你在wx.showToast之前调用了wx.hideLoading()的话可能导致wx.showToast无法显示
6、设置页面的标题(navigationBarTitleText)导航颜色(navigationBarBackgroundColor
)都在.json里面进行设置,禁止页面滚动也是在.json里面设置 "disableScroll":true
7、在iOS 上,小程序的 javascript 代码是运行在 JavaScriptCore 中
在Android 上,小程序的 javascript 代码是通过 X5 内核来解析
在开发工具上, 小程序的 javascript 代码是运行在 nwjs(chrome内核) 中
8、小程序不支持级联选择器
9、 css中无法读取本地资源,所以.wxss中使用background-image属性电脑上图片能出来,但是手机是上无法显示的。
解决办法:1、使用网络图片代替本地资源,例如<view style="background-image: url(http://192.168.1.23:8021/payday/img/id_down.png"></view>
2、使用base64转码,如果转码后太大也不建议
3、使用Image标签代替背景图片
10、使用bindtap绑定事件,注意全部都是小写,否则点击了没反应,但是也不会报错。data-*必须全都小写
11、form表单取值可以用e.detail.value
如:<form bindsubmit="formSubmit">
<input name="detail" placeholder="详情地址" />
<input name="realname" placeholder="收件人姓名" />
<input name="mobile" placeholder="手机号码" type="number"/>
<button formType="submit" type="primary">Submit</button>
</form>
formSubmit: function(e) {
// detail
var detail = e.detail.value.detail;
// realname
var realname = e.detail.value.realname;
// mobile
var mobile = e.detail.value.mobile;
}
12、官方的toast最多只能显示固定数量的汉字(7个)。推荐使用自定义toast或者wetoast(现成插件,需要在app.js中require下)app.wxss引入wetoast.wxss,
13、小程序是热启动的:超出五分钟后 自动销毁,这是他的机制,5分之内自动进入肯定是需要记住上次浏览的页面的。交互体验就是这样。
14、12月26号新开放搜索周边的 Wi-Fi,同时可以针对指定 Wi-Fi,传入密码发起连接。
小程序提供 HCE 模式的 NFC 能力,支持将安卓手机模拟成交通卡、诊疗卡等实体智能卡。用户打开小程序并贴近刷卡机具,即可完成卡的识别、消费等操作
坑:
示例代码是错的,正常获取数据是这样的:
wx.onGetWifiList(function(res){
console.log(JSON.stringify(res));
})
因为返回来的res是array类型的,需要用JSON.stringify()进行格式化
15、新建小程序报错。提示wxss not found,重装工具还是会出现这样的问题。
解决办法:
控制台输入 openVendor ,删掉 wcsc
16、showModal的内容可编辑 在ios系统微信6.6.0会出现showModal内容可编辑的情况,官方问题未修复
17、开发者可以将小程序代码分成多个包,每个包不超过2M,总大小不超过4M。从而根据用户需要,在合适时机下载指定包而非全部,提升打开速度。
小程序页面访问层级限制放宽至10级,方便承载更长的服务流程。
18、快速获取微信绑定手机号码
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"> </button>
getPhoneNumber: function(e) {
console.log(e.detail.errMsg)
console.log(e.detail.iv)
console.log(e.detail.encryptedData)
}