从fastadmin框架开发转过来的一些习惯区别和困扰建议与问题反馈经验分享
我是之前习惯了fastadmin框架开发插件,好久之前就看到了这个框架,感觉挺相似的,而且全用了最新的框架和技术,就一直想来学习使用它,但是之前老项目用着框架一直没忙完一直没机会完整的学习,近期就想来熟悉一下这个框架开发出一个demo应用来。我相信有许多和我一样的开发者可能会有一些不适应,不知道是我没有找到相关文档,还是确实没有补充到,在此我想提出一些疑问,方便熟悉fastadmin的开发者了解这个框架;😀
1、短信发送似乎有些区别,我看了一下验证码文档好像没有短信验证码示例,fa的发送验证码是通过hook的方式发送的,每个渠道的短信包都是一个插件注册相关的事件,并且框架里面的默认方法有发送和验证的示例,这样很方便扩展新的短信渠道,插件只要维护短信渠道就可以了。这个框架好像只有一个短信插件,我结合这个方法看,是不是要通过Captcha注册验证码事件,再按照短信插件的方法发出短信去?
2、如果是这样的话,我应该如何判断插件安装状态呢,不知道用户是否安装了这个插件,我搜了一遍文档没有找到这个,我在检索代码的时候,发现了一个疑似判断插件状态的代码示例,但是感觉这个方法有点繁琐,可能是我习惯了fa的get_addon_config和get_addon_info传一个插件标识就能获取了,因为习惯了之前的插件整合方案开发,这样可以使插件市场的插件都可以复用上
3、插件的核心控制器里面有些没见过的配置
像这个Config::addQuickEntrance的用法是什么,没有相关的文档说明,还有Config有哪些方法我们没法快速了解,示例代码的顶上没有找到导入的是哪个类,不知道这个是不是tp8的方法,我在tp8手册也没有找到这个用法,不解读源码的话会一头雾水
4、这个插件开发有没有像fa一样的插件命名检测和创建初始化插件的命令呢?我认为模块的初始化可以先命令生成,不用手动构建,可能我还没熟悉这个框架。
我看文档分了初级和进阶高级之类的分类,不知道我上面的这些问题是不是有相关的文档我没有找到还是确实还没补充完,因为我用了搜索也没找到相关的地方,希望可以优化一下。另外是官方能不能出个大部分场景下会使用到的开发示例呢?可能刚转到一个框架都会有一些生疏和不适应,这样更方便广大开发者去上手这个框架

刚用,感觉还是可以的

有些还是需要改进
是的,上手需要一定的基础,可能还有大方向没维护完,这些基础的文档啥的还来不及完善
新框架刚上手生疏是正常的,如果熟悉tp8和vue3生态,会简单很多,因为框架主要只是封装了一个表格,其他的都是通用的或是按需使用的工具而已
1、目前只有一个短信插件,它支持多种服务商,目前能满足绝大部分需求,短信验证码是使用Captcha类生成和验证的,该类的使用文档你应该已经看过了,自行整合其他短信服务商时,直接用该类生成验证码发送出去就行了
2、判断短信模块状态,就是你截图上的办法,其实也就是一行代码获取状态,然后用if判断就行了
3、Config::addQuickEntrance的作用就是于后台主“系统配置页面”内添加一个“快速打开插件的配置页面的链接”而已,方便配置及配置入口的集中管理,其实示例代码上面也有注释
4、没有初始化插件的命令,自己新建个目录,里边建个info.ini文件就是插件了,但是有个模块开发辅助,用习惯你就会发现它的强大,对模块文件的管理、自动同步、模块打包等常用功能均有实现
5、框架基于tp8+vue3全家桶,主要还是它们的文档得先看看,框架部分,先了解下目录结构,然后看看表格的文档基本就上手了,表格还有开发示例模块
其他比如axios的封装你可以学着文档用,也直接用原生的axios.create,都是兼容vue3/tp8生态通用的了
框架还是不错的,相信这些都会优化的。
目前PHP端的HTTP请求器有封装吗,因为调用三方接口频率还是挺高的,我一般习惯用框架自带封装的请求器,避免每个都用phpcurl
大多数情况下,用 guzzlehttp/guzzle 就可以了

好的,那我就知道了,应该大多数功能可以以模块自定和composer为主了,框架基础功能都大差不差的,和之前差不多,我尝试一下