laravel-admin 自定义页面任意区域使用form

    |     2021年1月28日   |   学习偶记   |     评论已关闭   |    184

本来是为了解决使用自定义页面form方法后,加载的其他js失效的问题。

尝试将js写入blade模板中,然后再加载模板,无效。

尝试将js写入全局页面中,无效。

尝试将id pjax-container 替换到from所在的div上,也无效。因为返回的是整个页面的html代码【就是content区域】,而不是指定的div上。

使用如下代码监测后

发现每提交一次,整个view就重新加载一次,提交两次,则加载两次。

最后发现不得不改动laravel-admin的源代码。最后得到了一些新的功能,就是使用自定义方法,使用自定义模板,利用laravel-admin的form组件来实现一些功能。

比如我们前端经常使用的首页某个区域有登录区域,登录后,这一块区域进行局部刷新处理。【对后台貌似没有什么卵用,呵呵。】

1、\vendor\encore\laravel-admin\src\Form\Builder.php 新增一个属性。

2、\vendor\encore\laravel-admin\src\Form.php 新增一个方法。设置刷新的区域

3、\vendor\encore\laravel-admin\src\Form\Builder.php open()方法修改。

4、\vendor\laravel-admin\laravel-admin\laravel-admin.js 修改提交后指定刷新的区域,这个值pjax-form是我自己定义的。

5、使用方式。

A、本方法不能应用在系统自己生成的form方法中。而是需要自定义一个方法。方法的参数是:Content $content

B、一般情况下需要自定义模板。所以这里可以发挥的地方就很多了

噢!评论已关闭。