# 门面篇
# 介绍
主要介绍如何使用laravel-fast-api组件包的门面
# 门面
# 门面定义划分方式
门面定义的划分方式一般是在组件包内 版本\后端或者前端\功能模块\后端或前端+功能模块+Facade
除此之外有一些无论是前端或者后台都会频繁使用到的公共业务逻辑,就会提炼封装到Common目录下,叫做
通用
门面最后一种是与业务逻辑代码无关的涉及到例如微信登录,短信验证码,二维码等第三方功能,这种都提炼封装在Public目录下,原则上要与业务逻辑代码解耦,叫做
公共
门面
# 门面使用介绍
注意
这里主要介绍 通用门面和公共门面的使用
之所以要单独提炼封装通用门面,是因为:
- 事件用来承载最小业务逻辑操作,后续可以优化为异步执行.
- 在通用门面业务逻辑中设置一些系统配置参数,开发阶段可以先行定义一个变量,用来判断业务逻辑是否执行.之后再逐渐优化为系统配置控制
警告
切勿过度提炼封装通用门面,以免滥用造成污染.提炼封装的话,也应该尽可能只处理一个单一业务逻辑.保持代码松耦合的状态
# 通用用户门面-CommonUserFacade
# 前提引用CommonUserFacade
use App\Facade\Common\V1\User\User\CommonUserFacade;
# 1注册用户(添加用户)
注意
$user
是可选参数,因为这种添加用户的方式只有账户名和默认密码.想自己随意控制用户的内容,可以自己在调用前操作.甚至可以参考该门面,针对自己业务单独处理
CommonUserFacade::registerUser($param=[],$user = null);
这里的参数param 其实就是控制器验证完成的 $validated
数组;成功返回注册的用户$userObject
对象,失败会抛出封装的公共异常