支付宝小程序文档整理

  1. page 内的四个文件(JS,axml,acss,json)必须具有相同的路径和文件名
  2. 开发者的代码会被打包成一份JavaScript脚本,小程序启动时运行,结束时销毁。
  3. app的四个钩子函数
onLaunch 小程序启动
onShow  小程序切换到前台
onHide  小程序切换到后台
onError 小程序出错
  1. 不要在 onShow 中进行 redirectTo/navigateTo 等操作页面栈的行为
  2. 直接修改this.data无效
  3. setData接受一个对象作为参数,对象的键名可以非常灵活,以数据路径的形式给出如:
this.setData({
  'array[0].text':'b'
})
this.setData({
  'newField.text': 'c'
})
  1. setData修改的值可以不用预先在this.data中定义
  2. 不建议使用setData一次设置过多的数据
  3. 1.7.0版本以后,setData可以传入一个回调函数,在页面重新渲染之后触发。
  4. this.spliceData()(1.7.2支持)在处理长列表(操作数组)的时候具有更高的性能。对应es5中数组的splice方法。key的灵活性和setData一样。

视图层

  1. 数据绑定 1.1 标签之间的变量直接用在{{}}写,在标签内的变量要在双引号之间"{{***}}"。 1.2 {{}}中为对象时,不用再加一个{}
  2. 条件渲染 2.1 同时判断多个标签时,使用<block></block>包裹,block标签并不会渲染,仅起到一个包裹的作用。
  3. 尽量避免把静态样式写到内联样式里,会影响渲染速度。

自定义组件

  1. 自定义组件的事件函数要写在methods中。
  2. 外部使用自定义组件时,如果传递的参数是函数,一定要以 on 为前缀,否则会将其处理为字符串。

性能

  1. 控制数据量
  2. 控制图片大小
  3. 网络请求提前到onload
  4. 减少页面级别的setData
  5. 使用具体路径修改数据
  6. 避免页面内标签嵌套过深