模块开发教程不够详细
模块开发

对于刚入手buildadmin的人来说,首先非常认可该系统,并且确实大大缩短了了开发周期
但是当我着手开发模块的时候,发现模块开发文档并不完善

我刚才试了一下开发模块,生成了几个功能进行修改,随后准备打包时,说可以添加一个《模块核心控制器》,但是并没有说它应该放在哪里,可能有一些大神知道放哪里,但是我希望可以更详细一些,照顾一下小白

顺带提一下
1.打包的时候需要包含哪些,如果不提示的话,可能会遗漏
2.模块核心控制器的存放位置
3.info.ini存放位置(已知放在压缩包根目录)
4.模块监听事件的示例与模块核心控制器类名相同,让我这个新手不知道如何是好
5.模块所需配置在哪个文件进行声明,例如我需要用到支付信息,又或者我需要新增前端logo等信息

已采纳
YANG001
YANG001
这家伙很懒,什么也没写~
1年前

刚来有迷茫感是可以理解的,感谢信任~

  1. 首先正常开发功能,使用CRUD什么的生成文件,不要覆盖系统核心文件,以便后续打包,完成后在先为模块取一个标识,比如testdev

  2. 接下来在modules建立一个testdev目录,在该目录建立模块核心控制器类文件Testdev.php,类名为Testdev,也就是说都是用的模块标识,只是涉及到类文件、类名了,来个大写开头。

  3. 移动你新增的文件,按BuildAdmin原有结构复制到testdev目录,比如新增了config/testdev.php就复制到modules/testdev/config/testdev.php,其他目录也是一样。

  4. modules/testdev建立模块基本信息文件info.ini

  5. 打包:进入模块目录(info.ini文件所在目录) -> 全选文件 -> 打包为zip

  6. 提到的模块监听事件是在核心控制器以内写一个AppInit方法,它不需要单独的类,在AppInit方法中又可以监听其他事件,它是第一个执行的,如果你有很多的事件要监听,希望单独文件,还是可以在AppInit动态注册

  7. 依赖配置文档内其实就描述的比较明确了

刘超
刘超回复YANG001
这家伙很懒,什么也没写~
1年前

我按照我理解的问您一下哈
1.正常开发
2.把新增文件按照buildadmin复制到一个新的文件夹,这里的文件夹就是您指的modules
3.modules下新建info.ini
4.打包

请问上述步骤正确吗

刘超
刘超回复YANG001
这家伙很懒,什么也没写~
1年前

奥,我知道了,看到了modules目录,下载了一个模块,我参考一下就知道了,感谢大佬解惑

从此以后
从此以后回复YANG001
无畏前行
10月前

请教一下,模块开发完成后,上传发布前怎么先自己测试一下模块是否可以正常安装呢?

YANG001
YANG001回复从此以后
这家伙很懒,什么也没写~
10月前

模块市场不是有上传安装吗?

从此以后
从此以后回复YANG001
无畏前行
10月前

ok,知道这个功能,就是确认下是不是这种方式

3个回答默认排序 投票数排序
涂小色
涂小色
这家伙很懒,什么也没写~
1年前

可以安装一个官方表格示例模块,以此为例 modules/tables :
info.ihi 是说明
install.sql 是你要加的表或sql 如果没有就不要这个
Tables.php就是模块的核心控制器 放安装、卸载、禁用、启用的功能 也可以加事件的监听 如果啥功能都不加 也可以不要
webBootstrap.stub 为main.ts、App.vue文件的插槽 插入这2个文件代码
其他文件就是对应应用的文件,模块安装的时候会全部复制到根目录,你想在哪加文件,就按想应的目录结构加文件就可以了。

初步了解,不足之处,望各位海涵!

刘超
刘超回复涂小色
这家伙很懒,什么也没写~
1年前

谢谢,我已经摸得差不多了
请问一下,有没有指令一键打包呢,只能手动复制吗

涂小色
涂小色回复刘超
这家伙很懒,什么也没写~
1年前

我目前就是正常开发 然后把文件复制到modules手动打包的

超级开发者
超级开发者
这家伙很懒,什么也没写~
1年前

我感觉这种打包模块的方式很直接很暴力!!我喜欢。
我担心的是如果安装了很多个模块,如果这些模块都动了同一个文件怎么办?后装模块是不是就把前装模板的代码给换了?
这一块文档也没说。只是说备份了。具体怎么处理的呢?

妙码生花
妙码生花回复超级开发者
这家伙很懒,什么也没写~
1年前

模块可以覆盖系统文件,但是上架的模块对此都会有严格要求,模块都是以新增文件为主

Crazy keyboard
Crazy keyboard
这家伙很懒,什么也没写~
10月前

大大们可开发个生一键创建 插件的工能不?

wherefor
wherefor回复Crazy keyboard
这家伙很懒,什么也没写~
3周前

已经有了,可以下载

请先登录
0
0
1
13