HiShop首頁(yè) > 網(wǎng)上商城系統(tǒng) > 商城建設(shè) > 微信小程序開(kāi)發(fā)模塊化

微信小程序開(kāi)發(fā)模塊化

時(shí)間:2024-10-27 08:27:57 |閱讀量:

微信小程序模塊化

在小程序中,采用模塊化的編程方式可以更好地組織代碼結(jié)構(gòu),提高代碼復(fù)用率和可維護(hù)性。

1. 抽離公共代碼

將一些常用的函數(shù)或者變量抽離成為一個(gè)單獨(dú)的 js 文件,作為一個(gè)模塊,通過(guò) module.exports 或者 exports 來(lái)對(duì)外暴露接口。

注意:

  • exports 是 module.exports 的一個(gè)引用,如果在模塊里邊隨意更改 exports 的指向會(huì)造成未知的錯(cuò)誤。因此,建議開(kāi)發(fā)者使用 module.exports 來(lái)暴露模塊接口,除非你已經(jīng)清晰知道這兩者的關(guān)系。
  • 小程序目前不支持直接引入 node_modules,如果需要使用到 node_modules 中的庫(kù),建議拷貝出相關(guān)的代碼到小程序的目錄中,或者使用小程序支持的 npm 功能。

以下是一個(gè)示例的 common.js 模塊:

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

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

在需要使用這些模塊的文件中,可以使用 require 來(lái)引入公共代碼:

// index.js
var common = require('common.js')
Page({
  onLoad: function() {
    common.sayHello('world')
    common.sayGoodbye('world')
  }
})

2. 文件作用域

在 JavaScript 文件中聲明的變量和函數(shù)只在該文件中有效;不同的文件中可以聲明相同名字的變量和函數(shù),不會(huì)互相影響。

通過(guò)全局函數(shù) getApp() 可以獲取全局的應(yīng)用實(shí)例,如果需要全局的數(shù)據(jù)可以在 App() 中設(shè)置。例如:

// app.js
App({
  globalData: 1
})
// a.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++
// b.js
// You can redefine localValue in file b.js, without interference with the localValue in a.js.
var localValue = 'b'
// If a.js it run before b.js, now the globalData shoule be 2.
console.log(getApp().globalData)

<本文由himall原創(chuàng),商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)標(biāo)明:himall原創(chuàng)>

多用戶商城系統(tǒng)解決方案

滿足不同行業(yè)發(fā)展電商的需求,HiMall更有針對(duì)性的提供不同行業(yè)內(nèi)的電商解決方案

  • 跨境電商解決方案

    支持直郵/保稅模式

    對(duì)接海關(guān)/保稅倉(cāng)

    支持多國(guó)國(guó)際語(yǔ)言

    對(duì)接Paypal國(guó)際支付

    幫助跨境外貿(mào)企業(yè)搭建跨境進(jìn)口/出口電商平臺(tái),搶占國(guó)際電商市場(chǎng),針對(duì)企業(yè)需求定制個(gè)性化跨境電商解決方案
    了解跨境方案
  • 分賬解決方案

    迎合金融監(jiān)管要求

    規(guī)避“二清”結(jié)算

    節(jié)約平臺(tái)財(cái)務(wù)成本

    降低平臺(tái)招商成本

    在合法、合規(guī)的前提下,為電商平臺(tái)提供資金收付、賬戶管理、資金合規(guī)等一體化整體解決方案
    了解分賬方案
  • B2B批發(fā)解決方案

    多級(jí)階梯批發(fā)價(jià)

    布局全渠道批發(fā)入口

    專屬批發(fā)訂貨市場(chǎng)

    銀聯(lián)B2B大額支付

    為企業(yè)快速搭建綜合性B2B批發(fā)電商平臺(tái),整合線下批發(fā)資源,拓展線上批發(fā)渠道,實(shí)現(xiàn)批發(fā)業(yè)務(wù)24小時(shí)在線經(jīng)營(yíng)
    了解B2B方案
更多電商解決方案>
|2024-10-27猜你喜歡

【本站聲明】 1、本網(wǎng)站發(fā)布的該篇文章,目的在于分享電商知識(shí)及傳遞、交流相關(guān)電商信息,以便您學(xué)習(xí)或了解電商知識(shí),請(qǐng)您不要用于其他用途;
2、該篇文章中所涉及的商標(biāo)、標(biāo)識(shí)的商品/服務(wù)并非來(lái)源于本網(wǎng)站,更非本網(wǎng)站提供,與本網(wǎng)站無(wú)關(guān),系他人的商品或服務(wù),本網(wǎng)站對(duì)于該類商標(biāo)、標(biāo)識(shí)不擁有任何權(quán)利;
3、本網(wǎng)站不對(duì)該篇文章中所涉及的商標(biāo)、標(biāo)識(shí)的商品/服務(wù)作任何明示或暗示的保證或擔(dān)保;
4、本網(wǎng)站不對(duì)文章中所涉及的內(nèi)容真實(shí)性、準(zhǔn)確性、可靠性負(fù)責(zé),僅系客觀性描述,如您需要了解該類商品/服務(wù)詳細(xì)的資訊,請(qǐng)您直接與該類商品/服務(wù)的提供者聯(lián)系。

電話咨詢 微信咨詢 0元開(kāi)店