MorJS compileType - 編譯類型

2023-11-07 16:11 更新
  • 類型: ?string?
  • 默認(rèn)值: ?miniprogram?
  • 可選值:
  1. ?miniprogram?: 以小程序的方式編譯,入口配置文件為 ?app.json?
  2. ?plugin?: 以插件的方式編譯,入口配置文件為 ?plugin.json?
  3. ?subpackage?: 以分包的方式編譯,入口配置文件為 ?subpackage.json?
  4. ?component?: 以組件的方式編譯,入口配置文件為 ?component.json?

編譯類型,用于配置當(dāng)前項(xiàng)目的產(chǎn)物形態(tài),支持類型如下:

  • ?miniprogram?: 小程序形態(tài),以 ?app.json? 作為入口配置文件
  • ?plugin?: 小程序插件形態(tài),以 ?plugin.json? 作為入口配置文件
  • ?subpackage?: 小程序分包形態(tài),以 ?subpackage.json? 作為入口配置文件
  • ?component?: 小程序組件形態(tài),以 ?component.json? 作為入口配置文件

同一個(gè)項(xiàng)目可通過不同的 ?compileType? 配合不同的入口配置文件輸出不同的產(chǎn)物形態(tài),有關(guān)多形態(tài)相互轉(zhuǎn)換的進(jìn)一步解釋,可參見文檔:小程序形態(tài)一體化。

參考配置示例:

/* 配置示例 */

// 小程序 app.json 配置示例
// 詳細(xì)配置可參見微信小程序或支付寶小程序 app.json 配置
{
"pages": [
"pages/todos/todos",
"pages/add-todo/add-todo"
],
// subpackages 或 subPackages 均可
"subPackages": [
{
"root": "my",
"pages": [
"pages/profile/profile"
]
}
]
}

// 小程序插件 plugin.json 配置示例
// 詳細(xì)配置可參見微信小程序或支付寶小程序 plugin.json 配置
{
"publicComponents": {
"list": "components/list/list"
},
"publicPages": {
"hello-page": "pages/index/index"
},
"pages": [
"pages/index/index",
"pages/another/index"
],
// 插件導(dǎo)出的模塊文件
"main": "index.js"
}

// 小程序分包 subpackage.json 配置示例
// 配置方式同 app.json 中的 subpackages 的單個(gè)分包配置方式一致
{
// type 字段為 MorJS 獨(dú)有, 用于標(biāo)識(shí)該分包為 "subpackage" 或 "main"
// 區(qū)別是: 集成時(shí) "subpackage" 類型的分包會(huì)被自動(dòng)合并到 app.json 的 subpackages 字段中
// "main" 類型的分包會(huì)被自動(dòng)合并到 app.json 的 pages 字段中 (即: 合并至主包)
"type": "subpackage",
// root 字段將影響集成時(shí)分包產(chǎn)物合并至宿主小程序時(shí)的根目錄
"root": "my",
// 注意: 編譯分包以 pages 作為實(shí)際路徑進(jìn)行解析
"pages": [
"pages/profile/profile"
]
}

// 小程序組件 component.json 配置示例
// publicComponents 和 main 字段為 MorJS 自定義字段
{
// publicComponents 記錄組件列表,標(biāo)識(shí) bundle 模式下哪些組件需要被編譯
// publicComponents 有兩種配置寫法,寫成數(shù)組時(shí)標(biāo)識(shí)組件列表
"publicComponents": [
"components/banner/index",
"components/image/index",
"components/popup/index"
],
// publicComponents 寫成 { key: value } 對(duì)象時(shí),將 value 的組件編譯到 key 對(duì)應(yīng)的產(chǎn)物目錄下
"publicComponents": {
"morjs-banner/index": "components/banner/index",
"morjs-image/index": "components/image/index",
"morjs-popup/index": "components/popup/index"
},
// main 用于配置組件初始化文件
"main": "index.js"
}

默認(rèn)情況下不同 ?compileType? 對(duì)應(yīng)的入口配置文件會(huì)直接從 ?srcPath? 和 ?srcPaths? 所指定的源碼目錄中直接載入。

如需要定制入口配置文件的路徑可通過 customEntries 配置 來自定義。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)