前文:首先感谢@天下雪 的热心帮助以及不断吹促才有了这一篇口水文。 2017.3.27日微信推送一则小程序消息, 文中表示小程序推出个人开发版, 这是才促使我去关注小程序, 于是当天说干就干, 马上申请开发者账号, 开通小程序开发者权限,开始了自己的踏坑之旅, 当然!!! 这仅仅是一个初识小程序的踏坑体验, 但是有些坑的确也踩得冤枉, 所以发出来和大家分享一下。 1. app.json里 tabBar 如果设置了 iconPath 而没设置 selectedIconPath 那在默认选择的列表项的图片则显示不出来 tabBar": { "list": [{ // 正确的使用方式, iconPath和selectedIconPath必须都设置图片地址 "iconPath": "images/navbar/1.png", "selectedIconPath": "images/navbar/2.png" }, { // 不可用, 因为默认第一个选项是选中状态, 而没给选中状态的选项卡赋予选中图片, 所以当前选中状态的TabBar并不会显示图片 "iconPath": "images/navbar/1.png", "selectedIconPath": "", }] } 2. app.json里 tabBar 的 iconPath 中 顶级目录前面不可以加 / tabBar": { "list": [{ // 可用 "iconPath": "images/navbar/1.png", // 不可用 因为images前面多了一个/ "iconPath": "/images/navbar/1.png" }] } 3. app.json里 tabBar的文字颜色只识别HexColor(#FFF), 并不认识什么red white.. // 很尴尬, 官方文档上已经说明过, 可我还是毫不犹豫的踩了进去... 4. 让当前页面默认宽高100%, 需要设置 page { width: 100%; height: 100%; } 注: 小程序中并没有什么html, body!!! 注: 小程序中并没有什么html, body!!! 注: 小程序中并没有什么html, body!!! 重要的事情说三遍, 这只是一个虚拟Dom, 所以请不要想着操作Dom, 这会让你想吹吹风。 5. image 默认被设置了宽高 (这其实不是啥坑, 主要是开发时还没给图片设置宽高的时候那样子丑爆了, 所以忍不住吐了个槽) 6. 日期格式在IOS上格式化错误!!! 这其实也不是啥小程序的坑, 这是IOS的坑, 只不过在开发小程序中遇见了, 那也就贴出来好了 var first_monday = "2017-02-27"; var stringTime = first_monday + "00:00:00"; var fm_timestamp = Date.parse(new Date(stringTime)); console.log("fm_timestamp:"+fm_timestamp) 这段代码在安卓上是毫无问题的, 但是在IOS上就会变成NaN, 具体原因不明, 估计是浏览器内核导致 解决方式: 将时间处理为 2017/02/27 00:00:00 就欧克啦 7. wx:if 表达式里 不能有空格 wx:if="{{ isShow }}" // 可用 wx:if=" {{ isShow }} " // 不可用 8. 都知道可以通过e.detail.value来获取到表单的值, 假设你输入的是数字 5, 但是因为获取到的值是字符串, 也就是 e.detail.value 会变成 '5', 所以如果是需要用获取到的值来进行对比时, 需要把通过标签获取到的值转换为number 也就是 parseInt(e.detail.val)。 9. <view>标签并不支持background-image=url(''), 这并不可怕 可怕的是!!! 在开发工具上还好好的 到了微信服务器上真机访问的时候就不行了 此文差不多就到这儿了, 一些微不足道的小坑, 希望帮得到大家, 注: 这些坑都已经是两个月前的事儿了, 后期四月初开发完一个个人小程序之后就消停了, 好多新知识都没有再跟进, 看最近又新增了分享原创等功能, 还是得不断学习啊, 与各位共勉之! |