魔众题库系统模块文件与目录

魔众题库系统 / 文档中心
文档中心
开发教程
安装常见问题
目录 说明
Admin 后台管理功能组
Api API接口功能组
Asset/ 模块静态文件,模块安装时会被原样复制到 public/vendor/Xxx 目录中
Core/ModuleServiceProvider.php 模块核心提供者,会被自动加载
Docs
Docs/doc/ 模块帮助文档
Docs/module/ 模块说明文档
Docs/release.md 模块更新日志
Migrate 模块数据库迁移文件
ROOT/ 其他系统文件,模块安装时会被原样复制到网站根目录,文件已存在时会覆盖已有文件
ROOT/aa/bb/cc.txt 会被复制到 网站根目录/aa/bb/cc.txt
View 模块视图文件,可以通过 module::Xxx.View.xxx 调用
Web Web前台功能组
config.json 模块配置文件

模块配置文件 config.json

配置文件是一个合法的JSON,请勿在JSON中包含注释,以下为了参数含义会在JSON中包含注释

{
    // 模块唯一标示,请使用 SomeExampleName 首字母大写的驼峰命名方式
    // 如果模块后期需要发布到模块市场,在开发前请先创建模块,防止与他人冲突
    "name": "Demo",
    // 模块文字说明
    "title": "开发示例程序",
    // 兼容环境,可选值为 laravel5、laravel9 ,默认为 laravel5
    "env": [
        "laravel5",
        "laravel9"
    ],
    // 模块类型,可以包含多个,目前支持以下值
    // PC:        电脑版
    // Mobile:    手机H5
    // App:       手机APP
    // MiniApp:   小程序
    // WxMiniApp: 微信小程序
    // Theme:     主题模块
    // Admin:     后台管理
    // Arch:      基础功能
    "types": [
        "PC",
        "Mobile"
    ],
    "tags": [
        "标签1",
        "标签2"
    ],
    // 当前模块版本号,请使用 主版本号.次版本号.修复版本号 的格式
    // 大的迭代请升级主版本号,常规次二代升级次版本号,Bug修复升级修复版本号
    "version": "1.2.0",
    // 模块依赖,支持多个
    "require": [
        // 依赖 Vendor 模块任何版本
        "Vendor",
        // 依赖 Abc 模块任何版本 
        "Abc:*",
        // 依赖 Abc 模块大于等于1.1.0的版本
        "Abc:>=1.1.0",
        // 依赖 Abc 模块大于1.1.0的版本
        "Abc:>1.1.0",
        // 依赖 Abc 模块小于等于1.1.0的版本 
        "Abc:<=1.1.0",
        // 依赖 Abc 模块小于1.1.0的版本 
        "Abc:<1.1.0",
        // 依赖 Abc 模块1.1.0的版本,其他任何版本都不匹配
        "Abc:==1.1.0"
    ],
    // 推荐模块声明,表示当前模块已适配,推荐安装的模块
    "suggest": [
        "Abc",
        "Abc:*"
    ],
    // 冲突模块声明,表示会和当前模块冲突的模块,禁止同时安装
    "conflicts": [
        "Abc",
        "Abc:*"
    ],
    // 模块依赖的 MSCore 版本,可以通过 \ModStart\ModStart::$version 获取 MSCore 版本号
    "modstartVersion": "*",
    // 模块作者
    "author": "ModStart",
    // 模块描述
    "description": "ModStart开发示例程序",
    // 模块可配置项,可在程序中通过如下方法获取配置信息
    // \ModStart\Module\ModuleManager::getModuleConfig('模块名','配置名')
    "config": {
        // 定义一个名称为 testText 的文本参数
        "testText": [
            [
                "text",
                "文字参数"
            ]
        ],
        // 定义一个名称为 testEnable 的开关
        "testEnable": [
            [
                "switch",
                "功能启用"
            ]
        ],
        // 定义一个名称为 testSelect 的下拉选项,包含两个选项
        "testSelect": [
            [
                "select",
                "下拉选择"
            ],
            [
                "options",
                {
                    "key1": "选项1",
                    "key2": "选项2"
                }
            ]
        ]
    }
}

模块帮助文档 Docs/doc/

模块帮助文档位于 Docs/doc 目录中,每个帮助文档保存为一个 *.md Markdown 文档,格式如下:


---

帮助文档内容

使用模块开发助手后台上传模块时,会自动解析 Docs/doc 目录中的帮助文档并上传关联到模块中。

帮助文档使用帮助文档的文件名作为唯一标识,如果有更新会自动更新发布。

模块说明文档 content.md

文档位置位于 Docs/module/content.md

模块帮助文档位于 Docs/module/content.md ,使用模块开发助手后台上传模块时,会自动更新到模块说明文档中。

模块更新日志文档 release.md

文档位于 Docs/release.md

模块格式严格按照如下,使用模块开发助手后台上传模块时,会自动更新到模块发布更新日志中。

## 1.1.0 版本发布说明

- 新增:XXX功能
- 新增:XXX功能
- 优化:XXX功能
- 修复:XXX功能

---

## 1.0.0 版本发布说明

- 新增:XXX功能
- 新增:XXX功能
- 优化:XXX功能
- 修复:XXX功能

多个版本使用 --- 分割。

QQ
微信
公众号
客服