微信小程序中app.js文件、组件、api

app.js文件:

每个小程序都需要在app.js中调用 App 方法注册小程序实例.

	App({//App实例化,整个小程序只有一个App实例,全部页面共享onLaunch: function () {//onLaunch小程序启动之后触发  },onShow: function () {//onShow小程序启动,或从后台进入前台显示时触发 },onHide: function () {//onHide小程序从前台进入后台时触发 },onError: function () {//onError小程序发生脚本错误或 API 调用报错时触发 },onPageNotFound: function () {//onPageNotFound小程序要打开的页面不存在时触发 },onUnhandledRejection: function () {//onUnhandledRejection小程序有未处理的 Promise 拒绝时触发 },onThemeChange: function () {//onThemeChange系统切换主题时触发  },//可自定义天剑任意类型函数或变量,用this可访问,如:names:'jack'})

页面中的js文件:

对于小程序中的每个页面,都需要在页面对应的 js文件中使用page进行注册页面,指定页面的初始数据、生命周期回调、事件处理函数等。

	Page({//page为页面构造器,生成一个页面data: {//data定义初始化数据,会和wxml使用{{text}}渲染text: "hello"},options: {//options定义页面的组件选项},onLoad: function() {// 页面创建时执行},onShow: function() {// 页面出现在前台时执行},onReady: function() {// 页面首次渲染完毕时执行},onHide: function() {// 页面从前台变为后台时执行},onUnload: function() {// 页面销毁时执行},onPullDownRefresh: function() {// 触发下拉刷新时执行},onReachBottom: function() {// 页面触底时执行(上拉)},onShareAppMessage: function () {// 页面被用户分享时执行},onShareTimeline: function () {// 页面被用户分享到朋友圈时执行},onAddToFavorites: function () {// 页面被用户收藏时执行},onPageScroll: function() {// 页面滚动时执行},onResize: function() {// 页面尺寸变化时执行},onTabItemTap(item) {// tab 点击时执行console.log(item.index)console.log(item.pagePath)console.log(item.text)},// 事件响应函数(自定义函数名,如:viewTap)viewTap: function() {this.setData({//setData重新设置值text: 'word'}, function() {//重新赋值后执行的回调函数})},// 自由数据customData: {hi: 'MINA',lucky:'jack'}})

behaviors:

behaviors 可以用来让多个页面有相同的数据字段和方法,如:

	 //behavior.js中:module.exports = Behavior({data: {sharedText: '页面共用字段'},methods: {sharedMethod: function() {//共用方法}}})// page.js中:var myBehavior = require('./behavior.js')Page({behaviors: [myBehavior],//使用behaviors接收数据onLoad: function() {console.log(this.data.sharedText)//通过this拿到数据}})

Component:

Component构造器可用于定义组件,调用 Component构造器时可以指定组件的属性、数据、方法等,文档推荐:https://developers.weixin.qq.com/miniprogram/dev/reference/api/Component.html,如:

	Component({behaviors: [],// 属性定义(详情参见下文)properties: {myProperty: { // 属性名type: String,value: ''},myProperty2: String // 简化的定义方式},data: {}, // 私有数据,可用于模板渲染lifetimes: {// 生命周期函数,可以为函数,或一个在methods段中定义的方法名attached: function () { },moved: function () { },detached: function () { },},// 生命周期函数,可以为函数,或一个在methods段中定义的方法名attached: function () { }, // 此处attached的声明会被lifetimes字段中的声明覆盖ready: function() { },pageLifetimes: {// 组件所在页面的生命周期函数show: function () { },hide: function () { },resize: function () { },},methods: {onMyButtonTap: function(){this.setData({// 更新属性和数据的方法与更新页面数据的方法类似})},// 内部方法建议以下划线开头_myPrivateMethod: function(){// 这里将 data.A[0].B 设为 'myPrivateData'this.setData({'A[0].B': 'myPrivateData'})},_propertyChange: function(newVal, oldVal) {}}})

组件:

小程序提供了丰富的组件给开发者,开发者可以组合各种组件合成自己的小程序。就像 HTML的div, p 等标签一样,如:

<map longitude="深圳经度" latitude="深圳纬度" bindmarkertap="点击地图时触发的函数" style='width:200px;height:200px' class='mapbox'></map><!--map地图组件,呈现一个地图到页面上,可添加属性,如组件内-->

更多组件文档推荐:https://developers.weixin.qq.com/miniprogram/dev/component/

api:

为了让开发者可以方便的调起微信提供的能力,例如获取用户信息、微信支付等,小程序提供了很多 API 给开发者去使用,如获取地理信息:

	wx.getLocation({type: 'wgs84',success: (res) => {var latitude = res.latitude // 纬度var longitude = res.longitude // 经度}})

更多API推荐阅读:https://developers.weixin.qq.com/miniprogram/dev/api/

提示:本文图片等素材来源于网络,若有侵权,请发邮件至邮箱:810665436@qq.com联系笔者删除。
笔者:苦海

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/575260.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

tia v15 添加项目_硬技能,TIA 博途软件界面的介绍

在前面的文章中给大家介绍了TIA 博途软件的安装包等介绍&#xff0c;这次小编给大家介绍一下TIA 博途软件的界面。#电工学习PLC#你知道吗&#xff0c;在博途软件的自动化项目任务的创建中&#xff0c;我们可以使用portal视图和项目视图。Portal视图是面向任务的视图&#xff0c…

UIImagePickerController按钮的中文问题

UIImagePickerController按钮的中文问题 执行以下两步即可 1. 在targets中设置region为China 2. 在project中添加支持中文 转载于:https://www.cnblogs.com/YouXianMing/p/3935460.html

Gulp简介、gulp基本使用步骤、gulp-cli工具、gulpfile.js文件、gulp插件

Gulp介绍&#xff1a; gulp概念&#xff1a; 基于node开发的前端构建工具模块&#xff0c;将前端机械化的操作编写成任务自动化操作&#xff0c;类似于webpack构建&#xff0c;可以完成代码压缩、语法转换、抽离公共文件、自动实现浏览器刷新等。 基本使用步骤&#xff1a; …

rsatool使用步骤图解_工作中想要事半功倍?图解来助你

一次会议上&#xff0c;老板让我们进行一场头脑风暴&#xff0c;然后将脑中浮现出来的想法以ppt的形式&#xff0c;在会议上与大家分享。在会上我看到其他区域的同事做的ppt&#xff0c;真的叫一个精美啊&#xff0c;有图形对比、有案例分析、有未来展望。反观自己的&#xff0…

ZRender源码分析2:Storage(Model层)

回顾 上一篇请移步&#xff1a;zrender源码分析1&#xff1a;总体结构 本篇进行ZRender的MVC结构中的M进行分析 总体理解 上篇说到&#xff0c;Storage负责MVC层中的Model&#xff0c;也就是模型&#xff0c;对于zrender来说&#xff0c;这个model就是shape对象&#xff0c;在…

java语言概述、java语言特性、java语言发展史、java语言作用

Java介绍&#xff1a; Java语言概述&#xff1a; Java语言是由美国Sun&#xff08;Stanford University Network&#xff09;斯坦福网络公司的java语言之父–詹姆斯高斯林&#xff0c;在1995年推出的高级的编程语言。所谓编程语言&#xff0c;是计算机的语言&#xff0c;人们…

电脑显示器不亮主机正常_电脑主机已开机 显示屏却不亮(看完秒懂)

台式电脑是工作的得力助手&#xff0c;我们用的是软件&#xff0c;但是如果硬件出问题了&#xff0c;就无法工作了。有时会遇到台式电脑开机&#xff0c;主机开了&#xff0c;但是屏幕却不亮&#xff0c;是怎么回事呢&#xff1f;现在&#xff0c;笔者告诉大家怎样一步步查明原…

转:HTML错误编号大全

HTML错误编号大全 状态行包含HTTP版本、状态代码、与状态代码对应的简短说明信息。在大多数情况下&#xff0c;除了Content-Type之外的所有应答头都是可选的。但Content-Type是必需的&#xff0c;它描述的是后面文档的MIME类型。虽然大多数应答都包含一个文档&#xff0c;但也有…

二进制的认识、进制之间的转换、计算机储存单位

二进制&#xff1a; 计算机中的数据不同于人们生活中的数据&#xff0c;人们生活采用十进制数&#xff0c;而计算机中全部采用二进制数表示&#xff0c;它只包含0、1两个数&#xff0c;逢二进一&#xff0c;如&#xff1a;1110。每一个0或者每一个1&#xff0c;叫做一个bit&am…

.net一个函数要用另一个函数的值_VLOOKUP函数

两个表格顺序不同&#xff0c;如何匹配合并&#xff1f;如下图&#xff1a;常常遇到有人问我&#xff0c;两个表格需要按照人名合并起来&#xff0c;但是两表的人名顺序并不相同&#xff0c;怎么处理呢&#xff1f;这个就要用到EXCEL大名鼎鼎的VLOOKUP函数了。具体语法如下&…

Spring中bean的五个作用域简介(转载)

Spring上个版本的IoC容器支持两个不同的bean作用域&#xff08;单例与原型&#xff09;。Spring 2.0改进了这一点&#xff0c;不仅提供了一些依赖于Spring部署环境&#xff08;比如说&#xff0c;在web环境中的request和session作用域bean&#xff09;的额外的作用域,而且提供了…

外部函数获取内部函数变量_一维随机变量的分布函数

一、分布函数、概率密度(一)一维随机变量的分布函数(二)一维离散型随机变量的概率分布(三)一维连续型随机变量的概率密度(四)一维连续型随机变量的函数的概率密度如&#xff1a;设X的概率密度为f(x), g(x)为连续函数&#xff0c;求Yg(x)的概率密度。方法一、定义法step 1. 求出…

DOS命令、Java语言开发环境(JVM、JDK、JRE)

DOS命令&#xff1a; DOS是一个早期的操作系统&#xff08;黑窗口&#xff09;&#xff0c;现在已经被Windows系统&#xff08;图形化&#xff09;取代&#xff0c;对于我们开发人员&#xff0c;目前需要在DOS中完成一些事情&#xff0c;Java语言的初学者&#xff0c;学习一些D…

Java运行原理研究(未完待续)

java的介绍和定性 java的优缺点分析 jdk的组成结构 jvm的工作原理 java的跨平台原理 java的编译和运行过程 转载于:https://www.cnblogs.com/guoxiaoqian/p/3957383.html

shell执行docker命令卡挂住_Docker官方文档翻译4

第四篇&#xff1a;Swarms准备工作安装Docker版本1.13或更高版本。安装Docker compose。安装docker machine阅读第1 2 3部分的内容。确保你已发布并推送到注册仓库的friendlyhello镜像。确保你的镜像可以部署为一个容器。 运行这个命令&#xff0c;在你的信息中插入用户名&…

编写第一个Java程序:helloworld

配置好java开发环境后&#xff0c;我们可以编写第一个java程序&#xff08;helloworld&#xff09;。 在开始编写java程序时&#xff0c;我们要知道java程序开发的三个步骤&#xff1a;编写、编译、运行。 编写阶段主要是由程序员编写后缀为.java的文件&#xff1b;将后缀为.ja…

正则表达式(上)

内容提纲&#xff1a; 1.什么是正则表达式 2.创建正则表达式 转载请注明出处&#xff0c;谢谢&#xff01; 假设用户需要在HTML表单中填写姓名、地址、出生日期等。那么在将表单提交到服务器进一步处理前&#xff0c;JavaScript程序会检查表单以确认用户确实输入了信息并且这些…

java中关键字、标识符、常量、变量、数据类型

关键字&#xff1a; JAVA语言中已经定义好的具有特殊含义的单词&#xff0c;被称为关键字&#xff0c;关键字是全小写无特殊字符的纯 英文字母&#xff0c;在编辑器中一般有高亮效果&#xff0c;如public、class、static等。 标识符&#xff1a; 在JAVA语言中&#xff0c;自…

js滚动条下拉一定值_JS逆向 | 无限Debugger之淘大象

置顶公众号今天继续和大家研究JS逆向&#xff0c;不少小伙伴在JS逆向的时候遇到过无限debugger的反爬&#xff0c;今天就拿一个网站练练手感受下无限debugger。分析请求先打开这次的目标网站--淘大象(https://taodaxiang.com/credit2)打开「开发者工具」就自动进入debug&#x…

apache配置多个虚拟主机

设置apache 多个虚拟目录记录 #配置第2个虚拟目录<VirtualHost 127.0.0.2:80>ServerName www.xx.comDocumentRoot "E:/wamp/www/"</VirtualHost><Directory "E:/wamp/www/"> Options Indexes FollowSymLinks Multiviews AllowOv…