1. 每添加一个页面须要在app.json中注册,第一个页面为首页。css
2. 例如注册一个welcome页面html
// 注意: 路径最前面不须要加 ‘/’ , 不须要加文件名
{ "pages": [ "pages/welcome/welcome" ] }
3. 每增长新页面后,js文件不能为空,须要调用 Page ({}) 初始化, 一样,页面的json文件也不能为空,应写为 {}json
// 页面对应的js文件 Page({ })
// 页面对应的json文件, 不能为空,最简单也要写成下面的格式 { }
4. 经过在啊app.json里面注册页面,IDE会自动为开发者建立 .wxml, .js, .wxss, .json 的四个对应的文件小程序
5. 每一个页面都有一个名字为page的根结点缓存
6. 小程序中支持一下几种css选择器app
.class(.box) #id(#box) element(view) element,Element (view, checkbox) ::after(view::after) ::before (view::before)xss
7. 小程序中新定义了 rpx的适配单位:在宽度为750px的设计稿中, 1物理像素 = 1rpx = 0.5px ide
8. Boolean的陷阱:在swiper组件中,用vertical属性来设置是否垂直排列,若要设置为水平排列,只有一下三种方法:函数
// 1. 不加如vertical属性 // 2. vertical = ‘’ // 3. vertical = ‘{{false}}’
9. 小程序为image组件增长了 mode 属性用以控制图片的裁剪,经常使用的是widthFix(宽度充满,高度自适应)spa
10. page页面的声明周期
Page({ data: {}, onLoad: function (options) {}, // 页面初始化 options 为页面跳转所带来的参数, 一个页面只会调用一次 onShow: function () {}, // 页面显示,每次打开页面都会调用 onReady: function () {}, // 页面初次渲染完成,一个页面只会调用一次,表明页面已经准备好,可进行视觉交互 onHide: function () {}, // 页面隐藏 onUnload: function () {} // 页面关闭 }) // 注意: // 1. 一个页面的加载顺序(onLoad > onShow > onReady) // 2. onLoad和onReady在整个页面的声明周期内只会执行一次,除非这个页面执行了onUnload卸载掉了,卸载意味着这个页面的一个声明周期结束了 // 3. onReady 仅仅用来监听页面的第一次渲染
11. 小程序中提供的其余特定事件的监听程序:
// onPullDownRefresh : 监听用户下拉动做的事件处理函数 // onReachBottom: 页面上拉触底事件的处理函数 // onShareAppMessage : 用户点击右上角分享
更新于2018.8.11
12. 小程序中的数据为单项绑定,能够经过setData()从新渲染页面
13. window.redirectTo() 、window.navigateTo() 与window.switchTab()的区别
window.redirectTo : 跳转后关闭当前页面
window.navigateTo : 跳转后保留当前页面,能够作返回操做
window.switchTab: 只能用于跳转带有tabbar的页面
14. navigateTo带来的层级问题: 小程序中使用navigateTo后会增长页面的一个层级,后退返回上一个层级。同时,小程序中最多只容许五个层级的页面。
15. 小程序中catch事件会阻止冒泡,而bind事件则不会阻止冒泡。
16. 使用模板时,import与include的区别:
import:使用import的引入的模板,在根节点须要使用template将全部标签包住,能够传递数据
include: 纯静态的html导入,至关于占位符,不能传递数据。
17. 在app.js中设置的小程序的声明周期
// onLaunch 监听小程序的初始化,当小程序初始化完成时,会触发onLaunch(全局只触发一次) // onShow 监听小程序显示,当小程序启动,或从后台进入前台显示,会触发onShow // onHide 监听小程序隐藏,当小程序从前台进入后台时触发 // onError 错误监听信息,当小程序发生错误脚本,或者API调用失败时触发,并带上错误
更新于2018.8.26
18. 小程序中的缓存的实效默认为永久。最大不容许超过10M。
19. template和block标签在编译后都会消失,因此不能在这两种标签上作绑定事件等操做。
20.小程序中修改当前页面的data数据并同步到视图时时,不能直接修改,须要使用setData()方法。
更新于2018.9.2
21. wx.setNavigationBarTitle() 能够覆盖app.json中对标题的设置,建议在页面的onReady钩子中使用。
22. wx.setData(obj), 使用时强烈建议先将obj初始化以后,再传入函数进行调用。涉及到字符串拼接时,只能使用obj[key]的方法进行赋值。