一、什么是模块化微信小程序中的模块化是指将代码拆分成多个独立的.js文件每个文件就是一个模块。模块可以定义自己的变量和函数并通过module.exports对外暴露接口其他模块通过require()引入后即可使用。模块化的好处代码复用同一个模块可以被多个页面引用职责分离不同功能放在不同文件便于维护避免全局污染模块内的变量默认是私有的二、案例描述设计一个小程序演示在index.js模块中引用来自全局模块、本模块、不同目录下其它模块、相同目录下其它模块中的变量和函数的方法。三、实现步骤1、创建不同目录下的模块// common/common.js var comMsg 来自不同目录下模块的变量 function comFunc() { return 来自不同目录下模块的函数 } module.exports { comMsg: comMsg, comFunc: comFunc }2、创建相同目录下的模块my-index.js在pages/index/目录下新建my-index.js// pages/index/my-index.js var myIndexMsg 来自相同目录下不同模块的变量 function myIndexFunc() { return 来自相同目录下不同模块的函数 } module.exports { myIndexMsg: myIndexMsg, myIndexFunc: myIndexFunc }3、修改app.js全局模块在App()函数中定义全局变量appMsg和全局函数appFunc// app.js App({ appMsg: 来自全局模块的变量, appFunc: function () { return 来自全局模块的函数 } })4、修改index.js核心这是案例的核心——在一个页面中引用四个不同来源的模块// pages/index/index.js // 1. 获取全局唯一的 App 实例引用全局模块 var app getApp() // 2. 引用不同目录下模块 common.js var common require(../../common/common.js) // 3. 引用相同目录下模块 my-index.js var myIndex require(./my-index.js) // 4. 本模块(index.js)的变量和函数 var indexMsg 来自本模块的变量 function indexFunc() { return 来自本模块的函数 } Page({ data: { appMsg: app.appMsg, appFuncResult: app.appFunc(), comMsg: common.comMsg, comFuncResult: common.comFunc(), myIndexMsg: myIndex.myIndexMsg, myIndexFuncResult: myIndex.myIndexFunc(), indexMsg: indexMsg, indexFuncResult: indexFunc() } })5、修改index.wxml通过 Mustache 语法{{}}进行数据绑定view classtitle引用来自不同模块的变量和函数/view view classappindex.js模块引用来自全局模块的变量{{appMsg}}/view view classappindex.js模块引用来自全局模块的函数{{appFuncResult}}/view view classcommonindex.js模块引用来自不同目录下模块的变量{{comMsg}}/view view classcommonindex.js模块引用来自不同目录下模块的函数{{comFuncResult}}/view view classmyindexindex.js模块引用来自相同目录下不同模块的变量{{myIndexMsg}}/view view classmyindexindex.js模块引用来自相同目录下不同模块的函数{{myIndexFuncResult}}/view view classselfindex.js模块引用来自本模块的变量{{indexMsg}}/view view classselfindex.js模块引用来自本模块的函数{{indexFuncResult}}/view6、修改index.wxss作业加分项不同背景色作业要求将来自不同模块的变量和函数输出信息加上不同的背景颜色。page { height: 100vh; } .title { font-size: 40rpx; font-weight: bolder; color: #0000ff; margin: 30rpx 20rpx 20rpx; } view { font-size: 32rpx; line-height: 2em; padding: 0 20rpx; } /* 全局模块 - 青色 */ .app { background-color: #b2ebf2; } /* 不同目录模块 - 黄色 */ .common { background-color: #fff9c4; } /* 相同目录模块 - 红色 */ .myindex { background-color: #ffcdd2; } /* 本模块 - 绿色 */ .self { background-color: #c8e6c9; }四、预览展示
企业数字化 ERP 产品动态
相关推荐
晓说第二季mp3解析:手写实现音频抓取器避坑指南 晓说第二季mp3解析:手写实现音频抓取器避坑指南 官方文档太长抓不住重点,导致很多新手在解析媒体资源时直接放弃。其实核心逻辑并不复杂,关键在于 手写实现 一套轻量级的抓取流程。本文结合 晓说第二季mp3… · 2026/9/23 20:36:33
3分钟搞懂微信打飞无敌模式源码,从入门到精通避坑指南 3分钟搞懂微信打飞无敌模式源码,从入门到精通避坑指南 版本升级后 API 全变了?别慌,这不是你的代码烂,是底层机制在变。很多开发者在接入微信相关功能时,一遇到接口变更就抓瞎,以为需要推倒重来。其实,只要吃透了核心逻辑,从入门到精通只需要理… · 2026/9/23 20:36:26
时钟英语速查手册:3分钟搞懂底层逻辑,面试不再卡壳 时钟英语速查手册:3分钟搞懂底层逻辑,面试不再卡壳 面试时考官问起时钟同步原理,你答不上来?别慌,这份时钟英语速查手册能救急。很多开发者把时钟当黑盒,只会调 API,真问到底层机制就露怯。 核心痛点直击 :你背了 NTP… · 2026/9/23 20:36:20
上海临港产业大学(指尖专升本)办学主体、实体学校与教学资质一次说清 一句话结论:指尖专升本,是上海临港产业大学人力资源服务中心校企服务部的学历提升品牌,办学主体为上海致笺教育科技有限公司(指尖教育 / 指尖星途)。我们不是临时拼凑的“租教室+兼职老师”组合:… · 2026/9/23 21:10:18
Bruce 固件 Web界面实战指南:如何用浏览器远程操控你的 ESP32 渗透设备 Bruce 固件 Web界面实战指南:如何用浏览器远程操控你的 ESP32 渗透设备 【免费下载链接】firmware Predatory ESP32 Firmware 项目地址: https://gitcode.com/GitHub_Trending/bru/firmware
把设备接上网络,打开浏览器,一块完整的渗透… · 2026/9/23 21:10:05
opencodex 修复 Cursor 工具通道:用 AgentRunRequest.mcp_tools 让注入工具真正可调用 【免费下载链接】opencodex Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code 项目地址: https://gitcode.com/gh_mirrors/ope/opencodex 点击… · 2026/9/23 21:09:59
XP关机变重启?从ACPI和BIOS排查断电与唤醒问题 简介:电脑XP系统关机异常,表现为无法正常关机或关机后自动重启,是一类常见且令人困扰的故障。这份小型PDF资料面向使用Windows XP的老用户、电脑维护人员和网络管理员,系统梳理了造成该问题的典型原因,包括退出声音文件… · 2026/9/23 21:09:52
Semver 语义化版本速查指南:版本号、范围表达式与 npm 工程实践 Semver 语义化版本速查指南:版本号、范围表达式与 npm 工程实践 【免费下载链接】reference 为开发人员分享快速参考备忘清单(速查表) 项目地址: https://gitcode.com/jaywcjlove/reference
Semantic Versioning(语义化版本,简称 Semv… · 2026/9/23 21:09:52
3招搞定手机怎么下载微信面试难题实战项目解析 3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29