W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
object[]
?[]
?小程序集成模塊配置, 詳細(xì)參見(jiàn)復(fù)雜小程序集成功能。
/* 配置示例 */
{
// 小程序集成模塊配置
modules: [
{
// 模塊名稱, 可選值, 默認(rèn)會(huì)基于 `git` 或 `npm` 或 `tar` 或 `file` 或 `link` 配置自動(dòng)生成
name: '',
// 模塊集成模式, 默認(rèn)為 `compose`
// - compose: 通過(guò) compose 方式集成在宿主小程序中, 通過(guò)拷貝的方式復(fù)制到產(chǎn)物目錄
// - compile: 通過(guò) compile 方式集成在宿主小程序中, 需要通過(guò) MorJS 編譯流程
mode: 'compose',
// 模塊類型, 默認(rèn)為 `subpackage`
// - 聲明為 主包(main) 的模塊,會(huì)將頁(yè)面插入到 app.json 的 pages 中
// - 聲明為 分包(subpackage) 的模塊,會(huì)將頁(yè)面插入到 app.json 的 subPackages 中
// - 聲明為 插件(plugin) 的模塊: 功能研發(fā)中
type: 'subpackage',
/* git / npm / tar / file / link 均用于下載模塊, 只需要配置一個(gè)即可 */
// 通過(guò) git 倉(cāng)庫(kù)配置模塊
// 支持直接配置鏈接, 如:
// git: 'git@github.com:abc/cde.git#master'
//
// 注意: branch/tag/commit 的優(yōu)先級(jí)為 commit > tag > branch, 相關(guān)字段均配置后,會(huì)按照優(yōu)先級(jí)取用
git: {
// 倉(cāng)庫(kù)地址, 支持 git/http/https/ssh 協(xié)議鏈接
url: 'git@github.com:abc/cde.git',
// 分支配置, 默認(rèn)為 HEAD
branch: 'develop',
// 標(biāo)簽配置
tag: 'v1.1.0',
// Git 提交 commit id
commit: 'abcdefghigklmnopqrstuvwxyz'
},
// 通過(guò) npm 配置模塊
// 支持直接配置鏈接, 如:
// npm: 'your_package@1.2.0'
npm: {
// npm 名稱
name: 'your_package',
// npm 版本, 默認(rèn)為 `latest`
version: '1.2.0'
},
// 通過(guò) tar 配置模塊
// 支持直接配置鏈接, 如:
// tar: 'https://your_domain.com/abc.tar.gz'
tar: {
url: 'https://your_domain.com/abc.tar.gz'
// 支持增加擴(kuò)展參數(shù), 參見(jiàn) got 配置
},
// 通過(guò) file 配置模塊(復(fù)制)
// 直接支持配置地址, 如:
// file: '/Users/yourHomeDir/Workspace/yourCustomModulePath'
file: {
path: '/Users/yourHomeDir/Workspace/yourCustomModulePath'
},
// 通過(guò) link 配置模塊(軟鏈)
// 直接支持配置地址, 如:
// link: '/Users/yourHomeDir/Workspace/yourCustomModulePath'
link: {
path: '/Users/yourHomeDir/Workspace/yourCustomModulePath'
},
// 構(gòu)建產(chǎn)物目錄配置, 默認(rèn)為 `dist`
dist: 'dist',
// 集成構(gòu)建過(guò)程中可執(zhí)行的腳本, 可選配置
scripts: {
// 執(zhí)行腳本時(shí)的公共環(huán)境變量, 可選配置
// MorJS 默認(rèn)會(huì)注入如下環(huán)境變量:
// MOR_COMPOSER_MODULE_CWD: 當(dāng)前模塊工作目錄
// MOR_COMPOSER_MODULE_TYPE: 當(dāng)前模塊類型
// MOR_COMPOSER_MODULE_HASH: 當(dāng)前模塊 hash 信息, 用于 MorJS 內(nèi)部判斷是否需要重新下載模塊
// MOR_COMPOSER_MODULE_ROOT: 當(dāng)前模塊根目錄
// MOR_COMPOSER_MODULE_SOURCE: 當(dāng)前模塊源碼目錄
// MOR_COMPOSER_MODULE_OUTPUT_FROM: 當(dāng)前模塊原始產(chǎn)物目錄
// MOR_COMPOSER_MODULE_OUTPUT_TO: 當(dāng)前模塊集成產(chǎn)物目錄
env: {},
// 模塊編譯或拷貝前執(zhí)行腳本, 可選配置
before: [
// 可以直接以字符串的方式配置命令
'npm i',
// 也可以以對(duì)象的方式配置
{
// 需要執(zhí)行的命令
command: 'cd some_dir && mor compile',
// 該命令的自定義環(huán)境變量
env: {
CUSTOM_ENV: 'CUSTOM_ENV_VALUE'
},
// 該命令的選項(xiàng), 參見(jiàn) execa.command 的 options 配置
options: {
shell: true
}
}
],
// 模塊編譯完成后或拷貝后執(zhí)行腳本, 可選配置
after: [],
// 所有模塊完成集成之后執(zhí)行腳本, 可選配置
composed: [],
// 腳本執(zhí)行公共選項(xiàng), 參見(jiàn) execa.command 的 options 配置
options: {}
},
// 模塊配置信息, 對(duì)應(yīng) subpackage.json / plugin.json / app.json 的內(nèi)容
// 三種類型文件的配置方式,可以參見(jiàn)下方鏈接中的描述
// => https://mor.eleme.io/guides/basic/config#compiletype
// 配置缺省狀態(tài)下,集成時(shí) MorJS 會(huì)自動(dòng)讀取 dist 配置所指向目錄中對(duì)應(yīng)的文件
config: undefined
}
]
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: