微信小程序module.exports 模块化
模块化
可以将一些公共的代码抽离成为一个单独的 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(path) 将公共代码引入
const common = require('common.js')
Page({helloMINA() {common.sayHello('MINA')},goodbyeMINA() {common.sayGoodbye('MINA')}
})
补充
var dataPost = { "shop": { "name": "金属", "description": "白金", },
} module.exports={ myData: dataPost // 对外暴露的变量名叫myData,对应着内部的dataPost对象
} 在index.js中调用:
let Data = require('../../data/data.js'); // 引入公共代码
var dataList = Data.myData.shop; // 开始通过对外暴露变量myDataPost,访问内部dataPost对象
推荐开发者采用 module.exports 来暴露模块接口。
微信小程序module.exports 模块化相关推荐
- 微信小程序笔记六模块化 —— module.exports
微信小程序中所有 js 文件作用域皆为独立的,每一个 js 文件即为一个模块.模块与模块之间的引用通过 module.exports 或 exports 对外暴露接口. 注意: exports 是 m ...
- 微信小程序开发实战——模块化
JavaScript模块规范 在任何一个大型应用中模块化是很常见的,与一些更传统的编程语言不同的是,JavaScript (ECMA-262版本)还不支持原生的模块化. Javascript社区做了很 ...
- 微信小程序App Page 模块化
微信小程序注册函数App() 在app.js里是一个App()函数,定义全局函数和数据,还可以用来注册一个微信小程序.在App()函数里有一些生命周期函数 App({onLaunch(option){ ...
- 微信小程序开发之——模块化
一 概述 可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块 模块只有通过 module.exports 或者 exports 才能对外暴露接口 在需要使用这些模块的文件中,使用 req ...
- 微信小程序之js模块化
文章目录 js模块化 模块化操作 引用模块化的js 引入外部JS js模块化 可以将通用的js抽取出来,放到一个js文件中,对外提供一个被调用的方法名 引入使用的js使用require引入公用的js文 ...
- 【微信小程序】CSS模块化、使用缓存在本地模拟服务器数据库
- 微信小程序登录密码MD5加密
在小程序中,页面的脚本逻辑是在JsCore中运行,JsCore是一个没有窗口对象的环境,所以不能在脚本中使用window,也无法在脚本中操作组件.zepto/jquery 也无法使用,因为zepto/ ...
- 微信公众平台接口调试工具json格式不对怎么搞_微信小程序 开发插件
开发插件 开发插件前,请阅读了解 <小程序插件接入指南> 了解开通流程及开放范围,并开通插件功能.如果未开通插件功能,将无法上传插件. 创建插件项目 插件类型的项目可以在开发者工具中直接创 ...
- 《十五》微信小程序中的插件
插件是对一组 js 接口.自定义组件或页面的封装,用于嵌入到小程序中使用. 插件不能独立运行,必须嵌入在其他小程序中才能被用户使用:而第三方小程序在使用插件时,也无法看到插件的代码.因此,插件适合用来 ...
最新文章
- 安装需要的第三方库时,命令行输入pip提示不是内部或外部命令
- 项目常用工具类整理(五)--jar包整理
- 退出命令_Vim命令报错问题:无法用:wq命令保存并退出只读文件
- mysql限制类别_MySQL限制每个类别的结果
- 程序详细设计之代码编写规范_我在不编写任何代码的情况下建立了一个设计策划网站
- PHP7 学习笔记(十一)使用phpstudy快速配置一个虚拟主机
- 类模板的分离式编译错误解决
- hbase的2.2.4版本支持哪个版本的hadoop_2019 年,Hadoop 还是数据处理的可选方案吗?...
- jQuery获取隐藏文本域
- 科罗拉多州立大学计算机科学专业,2020年科罗拉多州立大学有哪些优势专业
- 计算机论文-中国免费,计算机硕士毕业论文免费
- vivo手机如何开启云服务器,怎么开启vivo手机中的云服务自动备份功能
- 清华山维EPS二次开发VBS基础篇
- 贪心科技机器学习训练营(二)
- 高数基础_第1节_概述以及预备知识
- 工业大数据分析建模和算法
- python怎么撤销_用Python玩转微信(三)—— 查看撤回消息
- 编译原理复习 第一章 概述
- sort按vector元素排序
- 免费的PDF在线合并工具,拿走不谢!
热门文章
- php算html语言吗,为何说PHP 是一种 HTML 内嵌式的语言
- 牛客巅峰赛12th C.一起来看流星雨(旋转卡壳三分)
- JS实现聊天接收到消息语言自动提醒(您有新的消息请注意查收)
- python编程练习:提取Visual MODFLOW水均衡数据(.ZOT)文件至表格
- 【世界知识产权日】让区块链落地服务于网络知识产权
- android商城首页布局,Android使用分类型RecyclerView仿各大商城首页
- 程序员小说 Out Of Memory (一)
- 撕开的黎明--孔庆东卷
- js实现微博、微信分享
- macOS使用快捷键控制安卓手机音乐播放器