微信小程序的模块化

简介: 微信小程序的模块化

微信小程序的模块化

可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块。模块只有通过 module.exports 或者 exports 才能对外暴露接口。

注意

  • exports 是 module.exports 的一个引用,因此在模块里边随意更改 exports 的指向会造成未知的错误。所以更推荐开发者采用 module.exports 来暴露模块接口,除非你已经清晰知道这两者的关系。
  • 小程序目前不支持直接引入 node_modules , 开发者需要使用到 node_modules 时候建议拷贝出相关的代码到小程序的目录中,或者使用小程序支持的npm 功能

common.js

function sayHello(name) {
   
  console.log(`Hello ${
   name} !`)
}
function sayGoodbye(name) {
   
  console.log(`Goodbye ${
   name} !`)
}

module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye

在需要使用这些模块的文件中,使用 require 将公共代码引入

var common = require('common.js')
Page({
   
  helloMINA: function() {
   
    common.sayHello('MINA')
  },
  goodbyeMINA: function() {
   
    common.sayGoodbye('MINA')
  }
})

小程序定义全局变量

通过全局函数 getApp 可以获取全局的应用实例,如果需要全局的数据可以在 app.js中的App() 中设置,如:

app.js

App({
   
  globalData: 1
})

index.js

// The localValue can only be used in file a.js.
var localValue = 'a'
// Get the app instance.
var app = getApp()
// Get the global data and change it.
app.globalData++
目录
相关文章
|
JavaScript 小程序 开发者
【微信小程序】冒泡事件与非冒泡事件、将文章数据从业务中分离、wxml的模块化
冒泡事件是指某个组件上的时间被触发后,事件还会向父级元素传递;父级元素还会继续向父级的父级传递,一直到页面的顶级元素。而非冒泡事件则不会向父级元素传递事件。
【微信小程序】冒泡事件与非冒泡事件、将文章数据从业务中分离、wxml的模块化
|
存储 缓存 小程序
【微信小程序】CSS模块化、使用缓存在本地模拟服务器数据库
哈喽大家好,本期是微信小程序专栏第十五期。本期主要内容是使用缓存在本地模拟服务器数据库。主要包括了解应用程序的生命周期、Storage缓存初始化、设置缓存和清理缓存等。
|
JavaScript 小程序 开发者
小程序学习---模块化编程
      只要是做过编程的童鞋都知道模块化的思想,这样写出的代码更加简洁明了。模块化的代码让你的思路更加清晰,有利于当前编程,同时还有利于后期的维护。另外,很多有公共作用的代码,理所应当的提炼出来,以提高代码利用率。
1235 0
|
前端开发 JavaScript 开发者
《微信小程序:开发入门及案例详解》—— 2.5 模块化
小程序逻辑层语言是JavaScript,而JavaScript作为脚本语言在设计初期仅是为了实现简单的页面交互,由Brendan Eich在1995年花了不到十天时间发明出来,语言本身缺失了很多用于支撑大型项目的设计,而现在前端业务逻辑越来越复杂,代码也越来越多,很多问题就暴露出来。
3503 0
微信小程序把玩(六)模块化
原文:微信小程序把玩(六)模块化 模块化也就是将一些通用的东西抽出来放到一个文件中,通过module.exports去暴露接口。我们在最初新建项目时就有个util.js文件就是被模块化处理时间的 /** * 处理具体业务逻辑 */ function formatTime(date) { //获取年月日 var year = date.
1091 0
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
3284 7
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
3026 1
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
2243 7
|
10月前
|
人工智能 自然语言处理 小程序
技术小白如何利用DeepSeek半小时开发微信小程序?
通过通义灵码的“AI程序员”功能,即使没有编程基础也能轻松创建小程序或网页。借助DeepSeek V3和R1满血版模型,用户只需用自然语言描述需求,就能自动生成代码并优化程序。例如,一个文科生仅通过描述需求就成功开发了一款记录日常活动的微信小程序。此外,通义灵码还提供智能问答模式,帮助用户解决开发中的各种问题,极大简化了开发流程,让普通人的开发体验更加顺畅。
2913 11
技术小白如何利用DeepSeek半小时开发微信小程序?
|
9月前
|
小程序 Java 关系型数据库
weixin163基于微信小程序的校园二手交易平台系统设计与开发ssm(文档+源码)_kaic
本文介绍了一款基于微信小程序的校园二手物品交易平台的开发与实现。该平台采用Java语言开发服务端,使用MySQL数据库进行数据存储,前端以微信小程序为载体,支持管理员和学生两种角色操作。管理员可管理用户、商品分类及信息、交易记录等,而学生则能注册登录、发布购买商品、参与交流论坛等。系统设计注重交互性和安全性,通过SSM框架优化开发流程,确保高效稳定运行,满足用户便捷交易的需求,推动校园资源共享与循环利用。