微信小程序 生命周期函数详解
微信小程序 生命周期函数
小程序中 判断当前首页是从其他页面返回,还是由入口打开
由于小程序的数据在我们退出小程序时并没有得到释放,因此再次点击开来数据依然没有变成初始化
解决方法:在小程序 data 数据中声明一个变量 isClose 默认为 true 用于判断 是否为从入口打开,当点击跳转页面或者关闭小程序的时候,会触发 OnHide 函数在此函数中将判断 isClose is true 的时候即为关闭之后在打开,当跳转页面时首先将 isClose 设置为 false, 这样 触发 OnHide 函数的时候,isClose is flase 并不会执行,进入跳转的页面,然后在由页面进行返回这是会触发跳转的页面的 OnUnload 函数 在此函数中 设置一个定时器 在 200ms 之后将 isClose 改为 true 这样当关闭小程序 再次进入的时候 isColse 依然为true 判断时是首次进入页面
微信小程序的生命周期函数
1.1 监听页面加载
onLoad: function (options) {},
一个页面只会调用一次,可以在 onLoad 中获取打开当前页面所调用的 query 参数。
1.2 监听页面初次渲染完成
onReady: function () {},
一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。
1.3 监听页面显示
onShow: function () {},
每次打开页面都会调用一次。
1.3 监听页面隐藏
onHide: function () {},
当navigateTo或底部tab切换时调用。
1.4 监听页面卸载
onUnload: function () {},
当redirectTo或navigateBack的时候调用。
微信小程序的 app.js 中 独有的 函数
2.1 监听小程序初始化
onLaunch:function () {},
当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
2.2 错误监听函数
onError:function () {},
当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
微信小程序(五)页面生命周期详细介绍
这里只要熟悉页面的基本生命周期即可,业务在指定生命周期函数内书写. 以下是官网给出的生命周期函数方法和状态图 上面的生周期函数图对于做Android 或者IOS的来书理解起来应该不是难事,具体怎么掌握只有慢慢尝试和摸索 代码处理: 这里的代码主需要对使用创建项目时index目录下文件处理下就行,至于跳转后的页面用的还是logs不需要更改!下面贴下代码注释也比较详细 index.wxml <!--index.wxml--> <view class="container"
-
微信小程序 生命周期详解
微信小程序之----生命周期 在app.js的app()中注册程序 在页面.js中的Page({})中注册页面. 执行效果:
-
微信小程序(四)应用生命周期详解
App() 函数用来注册一个小程序,注意必须在 app.js 中注册,且不能注册多个. 使用方式也跟Android中的Application中初始化一些全局信息以供使用. 方法: 应用生命周期代码: 相关文章: hello WeApp icon组件 Window text组件 switch组件 tabBar底部导航
-
微信小程序page的生命周期和音频播放及监听实例详解
一.界面的生命周期 /** * 监听页面加载, * 页面加载中 */ onLoad:function(){ var _this = this console.log('index---------onload()') /** * 监听音乐播放 */ wx.onBackgroundAudioPlay(function() { console.log('onBackgroundAudioPlay') }), /** * 监听音乐暂停 */ wx.onBackgroundAudioPause(func
-
详解微信小程序入门五: wxml文件引用、模版、生命周期
实例一: include方式引用header.wxml文件 文件引用对于代码的重用非常重要,例如在web开发中我们可以将公用的header部分和footer等部分进行提取,然后在需要的地方进行引用. 微信小程序里面,是包含引用功能的--include.import.这两个引用文件的标签,使用基本差不多,这里先说一下include. 微信中的视图文件引用,引用过来的都是没有渲染的,基本类似于直接将引用过来的文件复制到引用位置,所以我们需要重新对其渲染. 实例说明 这里将默认创建的用户头像信息提取出
-
微信小程序 生命周期详解
微信小程序 生命周期 通俗的讲,生命周期就是指一个对象的生老病死. 从软件的角度来看,生命周期指程序从创建.到开始.暂停.唤起.停止.卸载的过程. 下面从一下三个方面介绍微信小程序的生命周期: 应用生命周期 页面生命周期 应用生命周期影响页面生命周期 >>>应用生命周期 用户首次打开小程序,触发 onLaunch(全局只触发一次). 小程序初始化完成后,触发onShow方法,监听小程序显示. 小程序从前台进入后台,触发 onHide方法. 小程序从后台进入前台显示,触发 onShow方法
-
微信小程序的生命周期的详解
今天记录一下微信小程序的app生命周期及各页面的生命周期. (一)小程序的生命周期 在app.json中进行监听,三个方法 ①onLauch方法只在小程序启动时触发一次. ②onShow方法,在小程序启动时,及由后台切换至前台显示时触发. ③onHide方法,在小程序由前台显示切换至后台时触发. 可以通过 ↓ 这张图片,感受一下各生命周期. 比较有趣的地方是,小程序启动时会触发两次onShow,我不知道是为什么.希望了解的同学解释一下. (二)页面的生命周期 1.在index中我添加了两种方式跳
-
微信小程序 生命周期和页面的生命周期详细介绍
微信小程序 生命周期和页面的生命周期详解: 1.小程序的生命周期--App.js App() 必须在 app.js 中注册,且不能注册多个.所以App()方法在一个小程序中有且仅有一个. App() 函数用来注册一个小程序.接受一个 object 参数,其指定小程序的生命周期函数等.先上代码: App({ onLaunch: function () { console.log('App onLaunch'); }, onShow:function (){ console.log('App onS
-
微信小程序 生命周期函数详解
微信小程序 生命周期函数 小程序中 判断当前首页是从其他页面返回,还是由入口打开 由于小程序的数据在我们退出小程序时并没有得到释放,因此再次点击开来数据依然没有变成初始化 解决方法:在小程序 data 数据中声明一个变量 isClose 默认为 true 用于判断 是否为从入口打开,当点击跳转页面或者关闭小程序的时候,会触发 OnHide 函数在此函数中将判断 isClose is true 的时候即为关闭之后在打开,当跳转页面时首先将 isClose 设置为 false, 这样 触发 OnHi
-
微信小程序 解析网页内容详解及实例
微信小程序 解析网页内容详解 最近在写一个爬虫,需要将网页进行解析供微信小程序使用.文字和图片解析都好说,小程序也有对应的text和image标签可以呈现.而更复杂的,比如表格,则比较棘手,不管是服务端解析还是小程序呈现都很费劲,也很难覆盖所有情况.于是我想,将表格对应的HTML代码转成图片,不失为一种变通的方法. 这里我们采用node-webshot模块,它对PhantomJS进行了轻量封装,可以轻松地将网页以截图形式保存下来. 首先安装Node.js和PhantomJS,然后新建一个js文件
-
微信小程序 navbar实例详解
微信小程序 navbar实例详解 实现效果图: data typeList: [ { name: "日报", id: "1" }, { name: "周报", id: "2" }, { name: "月报", id: "3" }, { name: "目录", id: "4" }] js that.setData({ dateValue: util.
-
微信小程序 页面传值详解
微信小程序 页面传值详解 一. 跨页面传值. 1 . 用 navigator标签传值或 wx.navigator, 比如 这里将good_id=16 参数传入detail页面, 然后detail页面的 onload方法内接受. 如果需要传多个参数, 用 & 链接即可 如果要传 数组, 字典等复杂类型, 要先用 JSON.stringify() 转成字符串传递. 注 : 如果转化的字符串中 有"?"这个符号, 则只会传递"?"以前的字符串, 这个问题我猜想可能
-
微信小程序 WXDropDownMenu组件详解及实例代码
微信小程序 WXDropDownMenu组件详解,这里给个小的示例,帮助大家学习理解, 功能: 适用于商品列表筛选与功能菜单跳转 先来看下效果图: 思路与步骤: 布局方面,整体使用dl来写,二级包在dd中,用ul li来写:交互方面,点击某一级菜单,关闭兄弟子菜单,点击某子菜单关闭所有菜单. 1.使用dt做出第一级菜单 2.使用dd嵌套第二级菜单,初始隐藏.position为absolute,使用z-index浮出页面层 /*总菜单容器*/ .menu { display: block; hei
-
微信小程序 template模板详解及实例
微信小程序 template模板详解及实例 首先看一些官方的一些介绍. 模板:模板功能是通过对template 标签的属性 name="" 去创建不同模板,通过is="name的值"来使用. 通过上面两张图,大概能看出,使用模板可以为大量类似的布局带来便利.下面看一下我自己的一个Demo. 先放出效果图(数据来自聚合数据) 可以看到,除了选项个数的差别之外,其他布局是相同的. 下面的每一道题的模板. <template name="carItem&q
-
微信小程序 require机制详解及实例代码
微信小程序 require机制详解 一, JS模块加载:一次性加载全部JS, 但并不一定立即执行. 先提一提微信小程序架构: 类浏览器 -> HTTP本地服务 -> 云端服务 微信小程序运行的架构,基本上是浏览器 -> HTTP本地服务 -> 云端服务, HTTP本地服务用来读取本地文件或者代理云端的文件资源.读取项目中JS文件, 是由HTTP本地服务取本地存储的脚本文件. 似乎比较简单,一个HTML 引用所有JS文件 既然采用了这种架构,那微信小程序就类似浏览器那样,借助一个HT
-
微信小程序 template模板详解及实例代码
微信小程序 template模板详解 如下图,我在做华企商学院小程序的时候,课程搜索结果页和课程列表页结构是完全一样的,这时就非常适合使用模板来完成页面搭建.实现一次定义,到处使用. 模板 一.定义模板 1.新建一个template文件夹用来管理项目中所有的模板: 2.新建一个courseList.wxml文件来定义模板: 3.使用name属性,作为模板的名字.然后在<template/>内定义代码片段. 注意: a.可以看到一个.wxml文件中可以定义多个模板,只需要通过name来区分: b
随机推荐
- 使用新的消息弹出框blackbirdjs
- JavaScript设计模式之原型模式(Object.create与prototype)介绍
- Jexcel实现按一定规则分割excel文件的方法
- iOS应用开发中导航栏按钮UIBarButtonItem的添加教程
- 解读ASP.NET 5 & MVC6系列教程(14):View Component
- Asp.net保持页面滚动条位置(页面提交后不变)
- Swift的函数式编程详解
- aspxgridview CustomButtonCallback 不支持弹出消息提示解决方法
- Android拍照保存在系统相册不显示的问题解决方法
- PHP输出当前进程所有变量/常量/模块/函数/类的示例
- C基础 寻找随机函数的G点详解
- Android如何使用RecyclerView打造首页轮播图
- php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
- VML的基本概念
- ubuntu linux下使用Qt连接MySQL数据库的方法
- jQuery对象和DOM对象使用说明
- nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
- 你可能会用到的16个Linux命令
- 阿里云linux服务器上使用iptables设置安全策略的方法
- Linux下实现UTF-8和GB2312互相转换的方法