dcat admin自定义按钮,弹框操作,虽然有文档但是有一些地方没写清楚
文档地址:https://learnku.com/docs/dcat-admin/1.x/tools-form/8125#modal
运行 php artisan admin:action 命令,选择选项 2,生成数据表格行操作类
- 这里生成的代码关键部分没有点出来,跟官方文档不一样
方法全部删掉,直接添加render渲染
我尝试过,不删除其他的方法,在添加了ICON的情况下,会出现多个icon显示。 - 文档中没有说明按钮前的icon如何添加。
- 官方代码:
$form = ResetPasswordForm::make()->payload(['id' => $this->getKey()]);
这里存在一个很重要的点,payload是在实现懒加载类才有的功能,官方文档没有指出来。也就是说class ResetPassword extends Form implements LazyRenderable
必须实现implements LazyRenderable
完整的代码如下:
<?phpnamespace App\Admin\Actions\Grid;use App\Admin\Forms\WithdrawAuditForm;
use Dcat\Admin\Grid\RowAction;
use Dcat\Admin\Widgets\Modal;
class WithdrawAuditAction extends RowAction
{protected $title = '审核';public function render(){$form = WithdrawAuditForm::make()->payload(['id' => $this->getKey()]);return Modal::make()->lg()->title($this->title)->body($form)// 按钮前的icon添加方式->button('<i class="feather icon-check-circle"></i> '.$this->title);}}