小程序toast组件中事件触发条件
微信小程序toast组件是一种消息提示框。例如当文章条数全部加载出来后,用户再次点击加载更多的时候,js判断文章条数全部加载出来后,便让toast组件弹出提示用户“没有更多文章了”,效果如下图所示:
代码实现
List item
index.wxml
1//点击加载更多,执行js里的loadMore函数
 2加载更多
 3
 4//hidden接收js传递过来的toastHidden变量值,为true,toast隐藏;为false,toast显示
 5没有更多文章了
 复制代码
 文件路径:pages/index/index.wxml
index.js
1Page({
 2  data: {
 3    //定义toastHidden变量,并将初始值设为true,此时toast组件隐藏
 4    toastHidden: true,
 5  },
 6
 7  //点击加载更多时执行的函数
 8  loadMore: function () {
 9   var that = this
10   if (“数据条数全部加载出来后”) {
11      //if条件成立的话,将toastHidden的值设为false,此时toast组件显示
12      that.setData({ toastHidden: false })
13    }
14  },
15
16  //这个函数将toastHidden值再次设为true,此时toast组件再次隐藏
17  toastChange: function () {
18    this.setData({ toastHidden: true })
19  }
20})
文件路径:pages/index/index.js
toastchange函数在哪里被执行了?
在上面的动态效果图中,可以看到,当文章条数全部加载出来后,toast组件弹出提示,且几秒后又消失。js中toastchange函数就是让toast组件再次消失。但是代码中并没看到toastchange函数在哪被调用。这就得先了解下toast组件的文档说明。
从文档中得知bindchange事件触发条件需要hidden的值为false。toastchange函数绑定在bindchange事件上,因此toastchange函数在hidden的值为false的时候执行。这里回看js中hidden的值设为false的地方。
红色框里的代码就是关键所在!
代码分析
Step1:toast组件接收js传递过来的toastHidden初始值(true),此时toast隐藏。
Step2:js程序判断文章条数全部加载出来后,将toastHidden值设为false,此时toast显示。
Step3:hidden接到false的时候触发bindchange事件并执行coastchange函数(coastchange执行前会有一个延时(duration),默认1500毫秒),函数中将toastHidden的值设置为true,此时toast组件再次隐藏。
小程序toast组件中事件触发条件的更多相关文章
- 微信小程序image组件中aspectFill和widthfix模式应用详解
		aspectFill 与 widthfix 都是保持宽高比不变 aspectFill 保持纵横比缩放图片,只保证图片的短边能完全显示出来.也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发 ... 
- ios下,微信小程序scrollview组件中的fixed元素抖得和帕金森病人一样
		问题现象 这个问题是最近在优化小程序代码时发现的. 在ios环境下,微信小程序的scrollview组件包裹着一个position:fixed的view. 当在scrollview组件上滑动时,这个v ... 
- 微信小程序在组件中获取界面上的节点信息wx.createSelectorQuery
		节点信息查询 API 可以用于获取节点属性.样式.在界面上的位置等信息. 最常见的用法是使用这个接口来查询某个节点的当前位置,以及界面的滚动位置. 示例代码: const query = wx.cre ... 
- 微信小程序,内容组件中兼容的H5组件
		受信任的HTML节点及属性 全局支持class和style属性,不支持id属性. 节点 属性 a abbr address article aside b bdi bdo ... 
- 小程序picker组件中的(普通选择器:mode = selector)
		本例代码借鉴官方picker案例: WXML: <picker bindchange="pickChange" value="{{index}}" ran ... 
- 小程序--->scroll-view组件不能触发相应滚动事件
		小程序scroll-view组件不能触发相应滚动事件 在制作加载更多时会发现不能触发相应事件,一般情况下首先要查看两个必要的属性scroll-view的高度是否设置,第二就是scroll-view的滚 ... 
- 微信小程序image组件binderror使用例子(对应html、js中的onerror)
		官方文档 binderror HandleEvent 当错误发生时,发布到 AppService 的事件名,事件对象event.detail = {errMsg: 'something wrong' ... 
- 在WePY中实现了小程序的组件化开发,组件的所有业务与功能在组件本身实现,组件与组件之间彼此隔离,上述例子在WePY的组件化开发过程中,A组件只会影响到A所绑定的myclick
		wepyjs - 小程序组件化开发框架 https://tencent.github.io/wepy/document.html#/?id=%e5%be%ae%e4%bf%a1%e5%b0%8f%e7 ... 
- 微信小程序弹窗组件
		概述 自己封装的一个比较简单微信弹窗小组件,主要就是教会大家对微信小组件的用法和理解,因为微信小程序对组件介绍特别少,所以我就把自己的理解分享给大家 详细 代码下载:http://www.demoda ... 
- 微信小程序_(组件)可拖动movable-view
		微信小程序movable-view组件官方文档 传送门 Learn 一.moveable-view组件 一.movable-view组件 direction:movable-view的移动方向,属性值 ... 
随机推荐
- CTF学习笔记(二)
			二.常见的HTML知识 (一)rorbts协议 robots协议也称爬虫协议.爬虫规则等,是指网站可建立一个robots.txt文件来告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,而搜索引擎则通过读 ... 
- C# 类型转换相关
			public void TypeConvert() { int a = 12; double b = 35.5; Console.WriteLine((int)b);//显示类型转换 //使用conv ... 
- 20203412马畅若    实验二《Python程序设计》实验报告
			20203412马畅若 实验二<Python程序设计>实验报告 课程:<Python程序设计>班级: 2034姓名:马畅若学号:20203412实验教师:王志强实验日期: ... 
- shell 脚本实现二进制安装 LAMP 架构的 wordpress
			#!/bin/bash##***********************************************************************#Author: ... 
- Swift中使用KVO
			在Swift中使用KVO,有如下两种方法: 原OC提供的: open func addObserver(_ observer: NSObject, forKeyPath keyPath: String ... 
- Linux编译安装中的--prefix
			本文主要说明--prefix参数的作用,其主要用在编译安装源代码应用中的./configure环节. 1.源码安装一般包括几个步骤:配置(configure),编译(make),安装(make ins ... 
- 2017GPLT
			PTA天梯赛2017GPLT 7-6 整除光棍 给定一个不以5结尾的奇数\(x\),求出数字\(n\)使得\(n*x=11...111\),输出数字n和1的位数 题解:模拟竖式除法 我们一开始发现n只 ... 
- Net Core 3.1 ONVIF 操控海康摄像头
			先给出实现的代码 https://github.com/lu1770/onvif-client.git 也可以通过安装包来使用功能 dotnet add package Onvif 基本用法 Agen ... 
- 看到项目中的DateTimeFormat和JsonFormat就头大
			刚来这家公司的时候, 发现很多同事还在用这种方式写代码 当时以为是偶然, 刚才在群里发现还有好多人在交流应当加哪些注解, 声明时区问题. 当写一个东西感到麻烦的时候, 那么大概率是有低成本的更优解的 ... 
- Linux Shell开发功能点
			背景 需要操作一批次服务器安装Docker 功能特色 一键执行 bash <(curl -s -L http://server.com/installDocker.sh) MemberNode ... 
