微信小程序基本遵循了Common.js模块化规范
在微信小程序中,每个js文件都是一个模块,在这个文件中定义的变量和函数只在该文件中有效
不同文件的相同变量不会相互影响
在开发中,经常会把一些常用的函数或变量单独定义在一个文件中,然后在需要使用的地方引入
导出某个模块,使用**module.exports或者exports**对外暴露接口,在需要使用的地方,通过require引入
如何导出和导入模块
// 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({
hello(){
common.sayHello('小明')
},
goodbye(){
common.sayGoodbye('小红')
}
})
Attention
exports是module.exports的一个引用,不要随意改变exports的指向
例如:exports = {sayHello :sayHello},这样会造成错误,无法导出模块
但是module.exports = {sayHello :sayHello}是没有问题的,所以推荐使用module.exports暴露模块接口