首页 > 编程语言 >微信小程序:2.全局开发

微信小程序:2.全局开发

时间:2024-07-16 20:54:31浏览次数:16  
标签:微信 程序 默认 监听 全局 pages png icon

app实例

简介

app.js中注册小程序实例的方法App拥有生命周期回调函数、错误监听函数、页面不存在监听函数等

生命周期回调函数

onLaunch(options) {//监听小程序初始化
console.log("监听小程序初始化",options);
},
onShow (options) {//监听小程序启动或切前台
console.log("监听小程序启动",options);
},
onHide () {//监听小程序切后台
console.log("监听小程序切后台");
},

错误监听函数

onError (msg) {//错误监听函数,小程序发生脚本错误或API调用报错时触发
console.log("错误监听函数",msg)
},

页面不存在监听函数

onPageNotFound(res){console.log("页面不存在监听函数");},

监听系统主题变化

onThemeChange(){console.log("系统切换主题时触发");}

全局配置

小程序根目录下的 app.json 文件用来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。

1.页面注册

注意

1.默认pages第一项为首页,也可以用entryPagePath进行指定

2.文件名不需要写文件后缀,框架会自动对应后缀

示例

"entryPagePath": "pages/index/index",
    "pages": [
    "pages/index/index",
    "pages/type/type",
    "pages/cart/cart",
    "pages/center/center"
],

2.tabBar

tabBar配置项

position:位置【默认bottom / top】

color :tab上的文字默认颜色

selectedColor:tab 上的文字选中时的颜色

backgroundColor:tab 的背景色

borderStyle:tab上边框的颜色【默认blak,仅支持 black / white】

list:列表【2-5个】

list配置项

pagePath:页面路径,必须在pages中注册过

text:描述文本

iconPath【可选】:图片路径,最大40kb,建议尺寸81px*81px,不支持网络图片,当position为top时不显示

selectedIconPath【可选】:选中时的图片路径

示例

"tabBar": {
    "list": [
        {
            "pagePath": "pages/index/index",
            "text": "首页",
            "iconPath": "./icon/首页2.1.png",
            "selectedIconPath": "./icon/首页2.2.png"
        },
        {
            "pagePath": "pages/type/type",
            "text": "分类",
            "iconPath": "./icon/分类1-1.png",
            "selectedIconPath": "./icon/分类1-2.png"
        },
        {
            "pagePath": "pages/cart/cart",
            "text": "购物车",
            "iconPath": "./icon/购物车1.1.png",
            "selectedIconPath": "./icon/购物车1.2.png"
        },
        {
            "pagePath": "pages/center/center",
            "text": "我的",
            "iconPath": "./icon/我的1.1.png",
            "selectedIconPath": "./icon/我的1.2.png"
        }
    ]
},

3.窗口表现

window配置项

navigationBarBackgroundColor: 导航栏背景颜色【默认#000000】

navigationBarTextStyle:       导航栏标题颜色【默认white / black】

navigationBarTitleText:       导航栏标题文字内容

backgroundColor:              窗口的背景色【#ffffff】

backgroundTextStyle:          下拉 loading 的样式【默认dark,仅支持dark/light】

enablePullDownRefresh:        是否开启全局的下拉刷新【默认false】

onReachBottomDistance:        页面上拉触底事件触发时距页面底部距离【默认50,单位为px】

示例

"window": {
    "navigationBarBackgroundColor": "#254a38",
        "navigationBarTextStyle": "white",
        "navigationBarTitleText": "月木学途",
        "backgroundColor": "#ffffff",
        "backgroundTextStyle": "light",
        "enablePullDownRefresh": true,
        "onReachBottomDistance": 50
},

4.其余配置

基础配置

style:配置"v2"可表明启用新版的组件样式

componentFramework:

sitemapLocation:指明 sitemap.json的位置

lazyCodeLoading: 按需加载

debug配置

debug:是否开启debug模式【默认false】

debugOptions:小程序调试相关配置项

配置项:

enableFPSPanel:是否开启 FPS 面板【默认false】

FPS面板:为了便于开发者调试渲染层的交互性能,小程序基础库提供了选项开启 FPS 面板,开发者可以实时查看渲染层帧率

networkTimeout配置

networkTimeout:各类网络请求的超时时间,单位均为毫秒

配置项:

request:wx.request的超时时间【默认60000】

connectSocket:wx.connectSocket的超时时间【默认60000】

uploadFile:wx.uploadFile的超时时间【默认60000】

downloadFile:wx.downloadFile的超时时间【默认60000】

permission配置

permission:小程序接口权限相关设置

示例

"style": "v2",
    "sitemapLocation": "sitemap.json",
    "debug": true,
    "debugOptions": {
    "enableFPSPanel": true
},
"networkTimeout": {
    "request": 10000,
        "downloadFile": 10000
},
"permission": {
    "scope.userLocation": {
        "desc": "你的位置信息将用于小程序位置接口的效果展示"
    }
}

全局属性

简介

整个小程序只有一个App实例,可以通过getApp方法获取App实例【全局唯一】并使用其方法

app.js中App方法编写全局属性

App({
    globalData: {
        userInfo: "我是全局属性"
    }
})

页面中通过getApp()读取

Page({
    onl oad(options) {
        const appInstance = getApp()//获取App实例
        console.log(appInstance.globalData.userInfo) // 我是全局属性
    }
})
​

标签:微信,程序,默认,监听,全局,pages,png,icon
From: https://blog.csdn.net/m0_63040701/article/details/140476560

相关文章

  • 排球比赛计分程序需求分析
    排球比赛计分程序需求分析1、产品愿景排球比赛计分程序的产品愿景是打造一款高效、准确、易用的计分系统,为排球比赛的组织者、裁判员、教练、运动员及观众提供全方位的赛事支持,提升比赛的公正性、观赏性和参与感。目标用户比赛主办方:负责组织和举办排球比赛,需要高效、准确的计......
  • 乒乓球比赛计分程序用户画像与用户愿景
    一、用户画像1.计分员用户画像基本信息:姓名:李精准性别:不限年龄:25-40岁教育程度:高中及以上,具备基本的计算机操作能力职业背景:体育赛事工作人员、志愿者或临时聘请的计分员性格特征:细心、耐心,对数字敏感,能够迅速准确地记录数据。责任心强,能够在高强度比赛中保持专注。期待:简......
  • 基于SpringBoot+Uniapp的微信阅读小程序系统设计与实现(源码+lw+部署文档+讲解等)
    文章目录前言项目运行截图技术框架后端采用SpringBoot框架前端框架Vue可行性分析系统测试系统测试的目的系统功能测试数据库表设计代码参考数据库脚本为什么选择我?获取源码前言......
  • AWS无服务器 应用程序开发—第十八章 AWS EventBridge
    AWSEventBridge是一项无服务器事件总线服务,可以方便地将数据从源传输到目标。EventBridge能够处理应用程序和服务之间的事件传递,并通过路由事件数据来触发各种操作。以下是使用AWSEventBridge的详细指南,包括其核心概念和操作步骤。核心概念事件源:生成事件的AWS服......
  • python+flask计算机毕业设计基于Vue.js的付费阅读小程序(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展,数字化阅读已成为现代人获取知识、娱乐休闲的重要方式之一。然而,在海量信息面前,如何有效保护知识产权,激励内容创......
  • python+flask计算机毕业设计技术的恩施婴童健康服务系统(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着社会对婴幼儿健康关注度的不断提升,特别是在恩施地区,作为一个快速发展且对婴幼儿健康服务需求日益增长的地域,构建一个高效、全面的婴童......
  • 半路出家程序员感受:非科班出身如何转行程序员?
    非科班出身是指那些大学专业为非计算机相关专业的人群,多数人对于计算机基础了解比较少,甚至零基础。这部分人群中有相当多一部分处于对于编程的兴趣和外界了解的印象想转行成为一名程序员。非科班出身与计算机科班出身相比有着天然的劣势,在计算机基础和编程认知上缺失,但如......
  • Redis实战篇之秒杀优化(基于黑马程序员Redis讲解视频总结)
    1.秒杀优化-异步秒杀思路我们来回顾一下下单流程当用户发起请求,此时会请求nginx,nginx会访问到tomcat,而tomcat中的程序,会进行串行操作,分成如下几个步骤1、查询优惠卷2、判断秒杀库存是否足够3、查询订单4、校验是否是一人一单5、扣减库存6、创建订单在这六步操作中,又......
  • 24 年 “年薪百万” 的 Java 程序员,都要学什么?
    大家好,我是程序员鱼皮。前几天我看了一篇由国外的Java架构师大佬分享的文章,主题是“Java架构师必会的20个技术”。光看这个标题,就知道在国外做Java开发,也很卷啊!能学习的技术真的太多了。我觉得作者讲的很全面,所以总结一下分享给大家,并且专门针对国内Java程序员也要学......
  • uniApp 接入微信短剧播放器
    短剧播放器是微信官方为微短剧类目小程序提供的播放器插件。开发者可引入短剧播放器插件后,基于自身需求快速进行开发上线。 小程序中使用短剧播放器需要以下几个条件小程序已有短剧类目(文娱->微短剧),并且将该类目设为主类目小程序引入短剧播放器插件   微信官方短剧......