微信小程序的onLaunch()方法和onShow()方法

在app.js里面你会发现一个onLaunch()方法,这个方法是当小程序加载完毕后就执行的方法,此外,还有一个onShow()方法,先看下面的代码

app.js

//app.js
App({
  onLaunch: function (options) {
    console.log(options);
    console.log("你好");
  },

  onShow: function (options) {
    console.log("This is the on show function");
    console.log("onShow");
    console.log(options);
  },

  globalData: {
    userInfo: null
  }
})

发现在控制台中,onLaunch和onShow方法都执行了,且二者的console.log(options)打印的是同样的东西,为啥要这样子呢?

首先onLaunch方法是在小程序加载时执行的,而onShow方法是在每次从小程序的前后台切换时都执行的,比如比点开发者工具上面的“切前台”,再点"切后台”,此时会发现控制台输出的是onShow方法里面内容,而onLaunch不再执行。

好像,手机里当你点小程序右上角的关闭按钮时,在5分钟之内再次进入该小程序的话,默认执行onShow方法,不执行onLaunch方法,好像是5分钟之内算是切换后台而已?(不是很确定)

onShow(options)
1.调用时机:小程序启动,或从后台进入前台显示时触发。如果想要在小程序每次进入到前台时都执行一些事情,那么可以将代码放在这个里面。
比如一些实时动态更新的数据,用户每次进来都要从服务器更新,那么我们就可以在这个里面做。

onHide()
调用时机:小程序被切换到后台(包括微信自身被切换到后台或者小程序暂时被切换到后台)。可以在这个方法中共做一些数据的保存。
小程序从前台进入后台时触发。

onError(String error)
小程序发生脚本错误或 API 调用报错时触发

onError:function(msg){
console.log(msg);
},

小程序出错的话,会在编辑器中自动打印出错误信息,该错误信息也可以通过onError(String error)的error参数接收并打印出来或者另作他用

来源:知了黄勇

原文地址:https://www.cnblogs.com/Guhongying/p/10797694.html

时间: 2024-07-31 19:05:17

微信小程序的onLaunch()方法和onShow()方法的相关文章

微信小程序常见错误及基本排除方法

也接触了不少人解决问题的过程里,有一些比较难以排查的可能性列举在这,方便大家看一下: 也欢迎大家把自己常用的排除方法列举在这,一起互相学习探讨! 1:ES6:使用es6可能导致安卓端真机调试时很多问题出现,还有其他未知问题:原因未知: 2:字母拼错,包括字母拼写错误,大小写没有注意:微信小程序中,有大量这样的代码示例,从中间冒出一个大写,比如支付中的appId 3:官方文档示例代码有误,有时官方文档示例代码也会出现问题,比如大小写出错,或者其他缺少参数等问题: 4:https,这个坑目前遇到的人

干货|微信小程序最常用的推广营销方法和渠道技巧推荐

直至目前为止,已经有近5亿用户使用过小程序了.正因为如此,很多企业和商家都纷纷将目光投向小程序,积极开起了自己的小程序来.希望借助小程序的流量风口,分得万亿红利市场的一杯羹. 方法一.付费推广 微信上线了广告功能, 搜索相关品类关键词,广告商的品牌就会得到优先展示.在微信做广告,是一件烧钱的事情,但是,效果肯定不能差了, 当然,利用微信广告推广,需要有钱的主.如果预算较多,可以适当的尝试一下,付费推广最为直接,而且在短期内就能见到效果. 方法二. 微信公众号推广 微信小程序和公众号的界限越来越模

干货|微信小程序线上线下推广的方法和销售话术小技巧分享

一款小程序在被开发后,若想获得广泛的用户群体,就得靠一些巧妙地话术宣传和推广措施.那么问题来了,微信小程序推广和话术有哪些呢?具体要怎么操作?别着急,请听小编来跟大家一一道来. 小程序推销话术小技巧 1.有自信,说话有底气 销售人员在宣传小程序时,一定在客户面前要很自信地说话.不自信的话是缺乏说服力量的.有了自信以后,销售人员在讲话的尾语可以作清楚的.强劲的结束,由此给对方确实的信息.如"一定可以使您满意的".这样的话会让客户对你宣传的小程序产生一定的信心. 2.重复重要语句,加深在顾

微信小程序实现地图插件的调用方法

目前很多微信小程序都具备地图查看的功能,那么对于在微信小程序中如何实现地图插件的调用方法,可能很多初学小程序开发的技术人员还存在很多疑问,那么下面就来跟大家详细解答一下. 首先肯定是借助小程序自带的map组件 .wxml代码: <map id="myMap" style="width: 100%; height: 300px;" latitude="{{latitude}}" longitude="{{longitude}}&qu

微信小程序分享至朋友圈的方法

最近研究怎么实现微信小程序分享至朋友圈,对就是朋友圈. 微信小程序目前没有直接提供方法来将小程序分享至朋友圈,不过可以采用曲线救国的方式来达到目的. 方法分两步: 1.通过浏览器将希望分享的东西风向至朋友圈: 微信小程序没有任何入口可以进入到微信的浏览器中,那么就更加不可能让用户进入到自身操作系统中的浏览器进行分享. 那么怎么通过其他的途径来达到次目的呢? 答案是:客服消息 微信小程序本身提供客服消息是用来更好的为客户服务的,但是请看以下截图: 小程序提供了入口,允许用户给客服发送消息,同时,也

微信小程序数据过滤(filter)方法

因为微信小程序的wxml和js的内部实现机制是分开编译的.所以在wxml是没办法调用js的函数的.这会导致WXML缺少一个我们常用的功能,那就是没有办法在视图层对数据做一些特殊处理.比如我们从后端获取到一个时间戳,然后需要在界面上把这些日期都格式化显示为2017-01-01这种格式的日期形式,在Vue, Angular之类的前端Web框架中,提供了如filter之类相应比较好用的方案.小程序是没有这些方法的.但是最近小程序推出了wxs类型文件就是解决这类问题的. 使用 首先新建filter.wx

黑马程序员 02-set方法和get方法

———Java培训.Android培训.iOS培训..Net培训.期待与您交流! ——— 1.set方法与get方法的使用场合 @public的成员变量可以被外界随意赋值,往往会产生脏数据,应该使用set方法和get方法来管理成员的访问(类似安检.水龙头过滤,过滤掉不合理的对象),不如人的年龄不可能为负. 2.set方法 (1)作用:给外界提供一个公共的方法用来设置成员变量值,可以在方法里面过滤掉一些不合理的值: (2)命名规范: 1> 方法名必须以set开头 2> set后面跟上成员变量的名

微信小程序使用函数的三种方法

使用来自不同页面的函数 函数写在util.js页面 function formatTime(date) { var year = date.getFullYear() var month = date.getMonth() + 1 var day = date.getDate() var hour = date.getHours() var minute = date.getMinutes() var second = date.getSeconds() return [year, month,

微信小程序实现类似JQuery siblings()的方法

想要实现的效果: 1.点击数字时背景为红色,字体为白色 2.点击1或2时,对应下面的灰点消失,再次点击其他数字时灰点显示 wxml: <block wx:for="{{weekDay}}" wx:key="item.index"> <view data-key="{{index}}" bindtap='select_d' class="day_list {{d_state==index?'red_day':''}}&q