范围:深圳yaboapp开发,软件定制开发,yaboapp软件开发公司,深圳软件外包公司.TEL:3447249690
当前位置:首页 > app小程序

yabo-微信小程序开发之详解生命周期方法

06-27 yaboAPP
摘要:生命周期是指一个小法式从建立到烧毁的一系列进程。

在小法式中 ,经由过程App()来注册一个小法式 ,经由过程Page()来注册一个页面

先来看一张小法式项目布局

/

从上图可以看出,根目次下面有包括了app.js,app.wxss,app.json三个文件

这是小法式的全局文件,app.js是小法式逻辑 ,app.json是小法式公共设置,app.wxss是小法式公共样式表

在app.js文件中 , 界说了一些生命周期方式 , onLaunch,onShow,onHide,onError,和肆意开辟者添加的函数或数据(经由过程this可以拜候)

以下是各个生命周期方式感化和描写

onLaunch 生命周期函数--监听小法式初始化 当小法式初始化完成时,会触发 onLaunch(全局只触发一次)

onShow 生命周期函数--监听小法式显示 当小法式启动,或从后台进入前台显示,会触发 onShow

onHide 生命周期函数--监听小法式埋没 当小法式畴前台进入后台,会触发 onHide

onError 毛病监听函数 当小法式产生剧本毛病,或 api 挪用掉败时,会触发 onError 并带上毛病信息

其他 Any 开辟者可以添加肆意的函数或数据到 Object 参数中,用 this 可以拜候

我们在app.js文件中界说以下方式 ,并打印出来

App({

onLaunch: function (options) {

console.log(app.js ---onLaunch--- + JSON.stringify(options));

},

onShow:function(){

console.log(app.js ---onShow---);

},

onHide:function(){

console.log(app.js ---onHide---);

},

onError: function (msg){

console.log(app.js ---onError--- + msg);

},

globyaboalData: {

userInfo: null }

})

/

这是我们打开一个小法式打印出来的一些方式

可以看出, 打开法式顺次履行了app.js下面onLaunch和onShow方式,和page页面中的onLoad,onShow和onReady方式

此中 , onLaunch, onShow 方式会返回一个参数对象, 里面包括了三个参数 , path,query和scene ,path是打开小法式的路径

query是打开小法式页面url的参数,scene是打开小法式的场景值

小法式切换到后台会履行以下2个方式

/

返回小法式前台

/

在page页面中界说的生命周期方式

onLoad 生命周期函数--监听页面加载

onReady 生命周期函数--监听页面初度衬着完成

onShow 生命周期函数--监听页面显示

onHide 生命周期函数--监听页面埋没

onUnload 生命周期函数--监听页面卸载

Page({

onLoad: function (options) {

console.log(page ---onLoad---);

},

onReady: function () {

console.log(page ---onReady---);

},

onShow: function () {

console.log(page ---onShow---);

},

onHide: function () {

console.log(page ---onHide---);

}, onUnload: function () {

console.log(page ---onUnload---); }

})

此中,打开小法式后会顺次履行onLoad,onReady和onShow方式

前后台切换会别离履行onHide和onShow方式,

当小法式页面烧毁时会履行 onUnload方式

例如,我们在details.js中界说onUnload方式

onUnload: function () { console.log(details.js --onUnload)

},

当我们从首页打开一个新页面details.wxml,然后再封闭着这个页面

/

从上图可以看到页面履行了onUnload方式。

别的, 小法式为我们供给了全局数据治理 ,在page页面中经由过程getApp()方式获得app.js实例

例如:

我们在app.js经由过程界说一个globalData数据对象

App({ globalData: { userInfo: null

}

})

// other.js

var appInstance = getApp()

console.log(appInstance.globalData)

留意:

App() 必需在 app.js 中注册,且不克不及注册多个。

不要在界说在 App() 内的函数中挪用 getApp() ,利用 this 便可以拿到 app 实例。

不要在 onLaunch 的时辰挪用 getCurrentPages(),此时 page 还没有生成。

经由过程 getApp() 获得实例以后,不要擅自挪用生命周期函数。

相干资讯:微信小法式微信小法式开辟教程

版权保护: 本文由 yaboapp开发 原创
转载请保留链接: http://www.

关于我们      深圳yabo定制开发软件有限公司,自2013年成立以来,为上千家企业提供软件外包、系统软件开发、yaboapp开发、微信公众号开发、深圳yabo小程序开发等各种优秀的软件定制开发服务.关键词:软件外包公司、手机软件开发、app制作开发、手机yaboapp开发、小程序开发公司【TEL】:3447249690 微信:3447249690 QQ:3447249690
  • 1578文章总数
  • 13访问次数
  • 建站天数