1、模塊化
可以將一些公共的代碼抽離成爲一個單獨的 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
將公共代碼引入
const app = getApp()
var common = require('../common.js')
Page({
data: {
},
onLoad: function (options) {
common.sayHello('MINA')
common.sayGoodbye('MINA')
},
})
控制檯輸出
2、文件作用域
通過全局函數 getApp
可以獲取全局的應用實例,如果需要全局的數據可以在 App()
中設置,如:
// app.js
App({
globalData: 1
})
// a.js
var localValue = 'a'
var app = getApp()
console.log(app.globalData+1);
控制檯輸出:2