微信小程序> 微信小程序Taro开发(2):生命周期及开发中注意点

微信小程序Taro开发(2):生命周期及开发中注意点

浏览量:682 时间: 来源:菜鸟搬砖记

生命周期

componentWillMount

在微信小程序中这一生命周期方法对应页面的onLoad或入口文件app中的onLaunch

componentDidMount

在微信小程序中这一生命周期方法对应页面的onReady或入口文件app中的onLaunch,在 componentWillMount后执行

componentDidShow

在微信小程序中这一生命周期方法对应 onShow

componentDidHide

在微信小程序中这一生命周期方法对应 onHide

componentDidCatchError

错误监听函数,在微信小程序中这一生命周期方法对应 onError

componentDidNotFound

页面不存在监听函数,在微信小程序中这一生命周期方法对应 onPageNotFound

shouldComponentUpdate

页面是否需要更新

componentWillUpdate

页面即将更新

componentDidUpdate

页面更新完毕

componentWillUnmount

页面退出,在微信小程序中这一生命周期方法对应 onUnload

在小程序中 ,页面还有一些专属的方法成员,如下:

1. onPullDownRefresh: 页面相关事件处理函数–监听用户下拉动作

2. onReachBottom: 页面上拉触底事件的处理函数

3. onShareAppMessage: 用户点击右上角转发

4. onPageScroll: 页面滚动触发事件的处理函数

5. onTabItemTap: 当前是 tab 页时,点击 tab 时触发

6. componentWillPreload: 预加载,只在微信小程序中可用

注意

1.通常入口文件会包含一个 config 配置项,这里的配置主要参考微信小程序的全局配置而来,在编译成小程序时,这一部分配置将会被抽离成 app.json,而编译成其他端,亦会有其他作用。

2.入口文件继承自 Component 组件基类,它同样拥有组件生命周期,但因为入口文件的特殊性,他的生命周期并不完整,如:componentWillMount、componentDidMount、componentDidShow、componentDidHide、componentDidCatchError、componentDidNotFound。

3.入口文件需要包含一个 render 方法,一般返回程序的第一个页面,但值得注意的是不要在入口文件中的 render 方法里写逻辑及引用其他页面、组件,因为编译时 render 方法的内容会被直接替换掉,你的逻辑代码不会起作用。

4.Taro 支持组件化开发,组件代码可以放在任意位置,不过建议放在 src 下的 components 目录中。一个组件通常包含组件 JS 文件以及组件样式文件,组织方式与页面类似。

taro项目目录如下:

├── config                 配置目录|   ├── dev.js             开发时配置|   ├── index.js           默认配置|   └── prod.js            打包时配置├── src                    源码目录|   ├── components         公共组件目录|   ├── pages              页面文件目录|   |   ├── index          index 页面目录|   |   |   ├── banner     页面 index 私有组件|   |   |   ├── index.js   index 页面逻辑|   |   |   └── index.css  index 页面样式|   ├── utils              公共方法库|   ├── app.css            项目总通用样式|   └── app.js             项目入口文件└── package.json

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎