微信小程序:模塊化

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 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章