Appearance
模块配置(依赖声明等)
- 您可以在模块配置中指定模块所需的NPM依赖、Composer依赖,系统在安装时会自动安装这些依赖。
- 您可以在模块配置中指定模块被禁用时不应被删除的文件,比如此模块覆盖了某个系统核心文件,那么模块被禁用时,禁用程序自动将此核心文件删除时,系统可能会崩溃(虽然系统在安装模块前有自动备份,且在禁用模块时会自动恢复)。
- 若您的模块需要上架,您可以通过邮件告知我们,模块小版本对
BuildAdmin版本号的要求,模块与其他模块之间的依赖和互斥关系等。
模块根目录的 config.json 文件
json不支持注释,所以若要复制以下代码时,请一定删除注释代码。
json
{
// composer 依赖列表
"require": {
"nelexa/zip": "^3.3",
"guzzlehttp/guzzle": "^6.3"
},
// composer 开发环境依赖列表
"require-dev": {
"symfony/var-dumper": "^4.2",
"topthink/think-trace": "^1.1"
},
// NPM 依赖列表
"dependencies": {
"vue-i18n": "~9.1.9",
"vue-router": "~4.0.11"
},
// NPM 开发环境依赖列表
"devDependencies": {
"@types/lodash": "~4.14.180",
"@types/node": "~17.0.9"
},
// Nuxt 工程 NPM 依赖列表
"nuxtDependencies": {
"vue-i18n": "~9.1.9",
"vue-router": "~4.0.11"
},
// Nuxt 工程 NPM 开发环境依赖列表
"nuxtDevDependencies": {
"@types/lodash": "~4.14.180",
"@types/node": "~17.0.9"
},
// 禁用本模块时,不能删除的文件
// 如果是系统核心文件:模块禁用时会自动恢复“安装模块时备份的所有冲突文件”,所以以下文件,多数情况会被还原到模块安装之前
"protectedFiles": ["app/common.php", "app/admin/event.php"],
// 更新 composer.json 的 config 字段
"composerConfig": {
"allow-plugins": {
"easywechat-composer/easywechat-composer": true
}
}
}模块其他要求与依赖声明
一、BuildAdmin 系统版本要求
模块的每个小版本,都可以对 BuildAdmin 系统版本进行要求,比如模块 v2.0.0 版本,仅提供给 BuildAdmin >= v2.3.3,低版本 BuildAdmin 可见新版本但不可下载更新。
二、依赖市场的其他模块
安装模块时检查是否已经安装另外一个模块,比如没有安装 workerman 工程,就不能安装客服系统,安装器将提醒用户先行安装 workerman 工程 模块。
三、与市场其他模块互斥
安装模块时检查是否与已经存在的模块冲突,比如已经安装七牛云存储就不能安装腾讯云存储。
提示
以上三点,都需要上架的模块才支持配置,上架时直接将以上的 小版本限制/依赖/互斥关系表 同模块包一起发送给 hi@buildadmin.com 即可,无格式要求,您能描述清楚即可,我们将在官网后台对这些信息进行维护,目前暂不支持开发者自行维护(没做这个功能)。

