微信小程序的执行流程

本文介绍了微信小程序开发中app.js的关键部分,包括App()方法的生命周期回调(onLaunch,onShow,onHide),以及如何利用globalData存储共享数据。还提到pages的加载顺序和如何在页面间获取和使用globalData中的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.首先会进入app.js

打开微信小程序首先会进入app.js,在app.js中会写入App()方法,App()接受一个object参数,用于指定小程序的生命周期等。App()方法有且仅有一个。

App()的object参数及其描述:

onLaunch:监听小程序显示,小程序初始化完成时,会触发onLaunch(全局只触发一次)

onShow:监听小程序显示,小程序启动,或从后台进入前台显示,会触发onShow

onHide:监听小程序隐藏,当小程序从前台进入后台,会触发onHide

前台,后台:用户当前界面运行或操作小程序时为前台;当用户点击右上角圆圈,或者按了设备Home建离开微信,小程序并没有直接销毁,而是进入了后台;当再次进入微信或再次打开小程序,又会从后台进入前台。

app.js中可以在globalData中写入一些常用到的共用数据,比如用户的个人信息,token,获取到的设备信息等。然后可以通过通过微信团队为开发者提供的全局的getApp()函数,在pages页面去引入,然后获取到想要的数据。

以下是一个简单列子:

从上面的图片中可以看到onLaunch和globalData的使用,onShow和onHide这里没写,有需求自行写入要执行的操作就行。

第一张图中会看到有微信自带的api的调用,这里可以直接去微信开放文档中查看。就不过多阐述。第二张图中可以看到有一个if判断,这里是判断本地是否有登录的token和个人信息,有的话将它们存放在globalData当中,之前获取到设备信息也可以存放在里面。记住要用this.globalData后加名称添加。第三张图就是我这边globalData中存放的一些常用到数据。(不必强行理解里面每个数据的意思,这里只是本人要用到一些数据)。

2.当 app.js 执行结束后,小程序会按照开发者在 app.json 中定义的 pages 的顺序,逐一执行。

在pages中我们要设置好首页,首页即为小程序打开后看到的页面,这个页面在写在pages中的第一个。首页不管是有无登录都可看到的。

在pages页面中我们使用let app = getApp(),这是之前写在app.js中的全局函数,这样的话我们可以直接获取到这个全局函数globalData中数据。比如这里我将之前存放在里面中的手机头部导航栏的高度还有胶囊的信息放在data中。当然也可以将用户个人信息放在里面。

### 关于鸿蒙操作系统上的同声传译应用程序 对于鸿蒙操作系统的同声传译应用程序开发,虽然目前主要的讨论集中在微信小程序环境下的实现方法[^1],但可以借鉴这些经验来构建适用于鸿蒙OS的应用。 #### 应用架构设计 考虑到鸿蒙OS支持分布式能力和服务卡片特性,在设计上应充分利用这些特点。例如: - **服务化组件**:将语音输入、文本翻译和语音合成功能模块化,便于维护与扩展。 - **多端协同体验**:通过HarmonyOS特有的跨设备交互机制,提供更加流畅自然的语言交流方式。 #### 技术选型建议 为了适配鸿蒙平台,推荐选用华为官方提供的AI工具链,如HiAI Engine API来进行模型部署;而对于具体的语音处理部分,则可以选择集成HMS Core中的ML Kit或其他第三方SDK(如科大讯飞),它们都提供了较为成熟的解决方案用于语音识别及合成任务。 #### 实现要点概览 以下是基于上述思路的一个简化版代码框架示例,展示了如何调用语音识别接口获取用户的口语表达,并将其转换为目标语言的文字输出: ```javascript // 初始化语音识别器 import speechRecognizer from '@ohos.multimedia.speech'; let recognizer = new speechRecognizer.Recognizer({ language: 'zh-CN', // 源语言设定为中国普通话 }); // 注册监听事件 recognizer.on('result', (data) => { console.log(`Recognition result: ${JSON.stringify(data)}`); // 调用在线翻译API完成语种间互译... }); ``` 需要注意的是,实际项目中还需要考虑更多细节问题,比如网络请求管理、异常情况捕获等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值