news 2026/4/15 16:49:04

wx微信小程序部分逻辑

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
wx微信小程序部分逻辑

微信小程序的逻辑层(App Service)概述

微信小程序的框架分为**视图层(View)逻辑层(App Service)**两部分。其中,逻辑层负责处理业务逻辑、数据处理和事件响应,是小程序的核心“大脑”。

  • 逻辑层的作用

    • 使用 JavaScript 编写,处理数据后通过setData发送给视图层更新界面。
    • 接收视图层的事件反馈(如用户点击、输入等)。
    • 所有代码最终打包成一个 JavaScript 文件,在小程序启动时运行,直至销毁(类似 ServiceWorker)。
  • 与普通 JavaScript 的区别

    • 不支持浏览器对象(如windowdocument)。
    • 增加了小程序专有功能:
      • App()Page()方法:用于注册小程序和页面。
      • getApp()getCurrentPages():获取全局实例和页面栈。
      • 丰富的微信 API(如wx.requestwx.loginwx.pay等)。
1. 注册小程序(App)

app.js中使用App()注册,整个小程序只有一个 App 实例,全页面共享。

// app.jsApp({onLaunch(options){// 小程序启动时触发(只触发一次)console.log('小程序启动',options);},onShow(options){// 从后台进入前台时触发},onHide(){// 从前台进入后台时触发},globalData:{// 全局数据,所有页面可通过 getApp() 访问userInfo:null}});

获取全局实例:

constapp=getApp();console.log(app.globalData);
2. 注册页面(Page)

每个页面在自己的.js文件中使用Page()注册。

// pages/index/index.jsPage({data:{// 页面初始数据(会绑定到视图层)message:'Hello World',list:[1,2,3]},onLoad(options){// 页面加载时触发},onReady(){// 页面初次渲染完成},onShow(){// 页面显示},onHide(){// 页面隐藏},onUnload(){// 页面卸载},handleTap(e){// 事件处理函数(视图层绑定 bindtap="handleTap")this.setData({message:'Clicked!'});}});
  • 数据更新:使用this.setData({ key: value })更新数据,视图层自动刷新。
3. 业务逻辑处理示例
  • 网络请求(常见业务逻辑):
wx.request({url:'https://api.example.com/data',success(res){this.setData({list:res.data});}});
  • 事件处理:视图层通过bindtapbindinput等绑定事件,逻辑层处理用户交互。

  • 模块化:可以将公共逻辑导出为模块。

// utils/util.jsmodule.exports={formatTime:function(time){...}};// 在页面中使用constutil=require('../../utils/util.js');
4. 注意事项
  • 逻辑层和视图层通信通过微信 Native 中转(双线程架构),确保性能。
  • 避免在逻辑层直接操作 DOM(不支持)。
  • 复杂业务建议拆分成组件或云函数(云开发)处理。

如果你的问题是关于微信小程序中具体某个部分的业务逻辑(如登录、支付、列表渲染等),或者有代码片段需要解释/优化,请提供更多细节,我可以给出针对性的示例!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 16:45:20

YOLO目标检测服务支持gRPC协议,降低GPU通信开销

YOLO目标检测服务支持gRPC协议,降低GPU通信开销 在智能制造工厂的质检线上,上百台工业相机每秒拍摄数千张产品图像,这些数据需要实时传输到后端GPU服务器进行缺陷检测。如果采用传统的HTTPJSON接口,频繁的连接建立、低效的文本序列…

作者头像 李华
网站建设 2026/4/10 11:47:34

Thief-Book终极指南:IDEA开发者的隐秘阅读神器

Thief-Book终极指南:IDEA开发者的隐秘阅读神器 【免费下载链接】thief-book-idea IDEA插件版上班摸鱼看书神器 项目地址: https://gitcode.com/gh_mirrors/th/thief-book-idea 还在为代码调试的等待时间感到无聊吗?想在紧张的开发节奏中寻找片刻的…

作者头像 李华
网站建设 2026/4/12 3:39:49

YOLOv9-C性能评测:在A10G上实现8ms推理延迟

YOLOv9-C 在 A10G 上实现 8ms 推理延迟的性能实践 在智能制造与智能视觉系统快速演进的今天,一个核心挑战始终摆在工程师面前:如何在不牺牲检测精度的前提下,将目标检测模型的推理延迟压到毫秒级?尤其是在高速 SMT 产线、自动化质…

作者头像 李华
网站建设 2026/4/14 11:35:42

YOLOv10创新点解读:无锚框设计如何释放GPU算力

YOLOv10创新点解读:无锚框设计如何释放GPU算力 在工业质检流水线上,一台搭载多路摄像头的AI检测设备正以每秒60帧的速度运行。然而,当场景中出现密集小目标——例如电路板上的微小焊点缺陷时,系统帧率骤降至20帧以下,G…

作者头像 李华
网站建设 2026/4/14 2:25:21

YOLO工业质检场景落地:每秒百帧检测背后的GPU集群支撑

YOLO工业质检场景落地:每秒百帧检测背后的GPU集群支撑 在现代电子制造工厂的SMT贴片线上,一块PCB板从印刷、贴装到回流焊完成,整个过程可能不到50毫秒。在这电光火石之间,成百上千个元器件必须精准无误地落在指定位置——任何微小…

作者头像 李华
网站建设 2026/4/14 1:17:28

PySimpleGUI配置升级实战:三步解决版本兼容性难题

PySimpleGUI配置升级实战:三步解决版本兼容性难题 【免费下载链接】PySimpleGUI 项目地址: https://gitcode.com/gh_mirrors/pys/PySimpleGUI 在应用迭代过程中,配置文件版本管理是确保用户体验连续性的关键挑战。当你的PySimpleGUI应用发布新版…

作者头像 李华