# 组件管理 ## 移除已有组件 form表单内置的`map`和`editor`组件通过cdn的方式引用了前端文件,如果网络方面有问题,可以通过下面的方式将它们移除 找到文件`app/Admin/bootstrap.php`,如果文件不存在,请更新`laravel-admin`,然后新建该文件 ```php formatName($this->column); $this->script = <<id}'); editor.customConfig.zIndex = 0 editor.customConfig.uploadImgShowBase64 = true editor.customConfig.onchange = function (html) { $('input[name=$name]').val(html); } editor.create() EOT; return parent::render(); } } ``` 新建视图文件`resources/views/admin/wang-editor.blade.php`: ```php
@include('admin::form.error')

{!! old($column, $value) !!}

``` 然后注册进`laravel-admin`,在`app/Admin/bootstrap.php`中添加以下代码: ```php editor('body'); ``` ### 集成富文本编辑器ckeditor 先下载[ckeditor](http://ckeditor.com/download) 并解压到/public目录,比如放在`/public/packages/`目录下。 然后新建扩展文件`app/Admin/Extensions/Form/CKEditor.php`: ```php script = "$('textarea.{$this->getElementClass()}').ckeditor();"; return parent::render(); } } ``` 新建view `resources/views/admin/ckeditor.blade.php`: ```php
@include('admin::form.error') @include('admin::form.help-block')
``` 然后在`app/Admin/bootstrap.php`中引入扩展: ```php use App\Admin\Extensions\Form\CKEditor; use Encore\Admin\Form; Form::extend('ckeditor', CKEditor::class); ``` 然后就能在form中使用了: ```php $form->ckeditor('content'); ``` ### 集成PHP editor 通过下面的步骤来扩展一个基于[codemirror](http://codemirror.net/index.html)的PHP代码编辑器,效果参考[PHP mode](http://codemirror.net/mode/php/)。 先将[codemirror](http://codemirror.net/codemirror.zip)库下载并解压到前端资源目录下,比如放在`public/packages/codemirror-5.20.2`目录下。 新建组件类`app/Admin/Extensions/PHPEditor.php`: ```php script = <<id}"), { lineNumbers: true, mode: "text/x-php", extraKeys: { "Tab": function(cm){ cm.replaceSelection(" " , "end"); } } }); EOT; return parent::render(); } } ``` >类中的静态资源也同样可以从外部引入,参考[Editor.php](https://github.com/z-song/laravel-admin/blob/1.3/src/Form/Field/Editor.php) 创建视图`resources/views/admin/php-editor.blade.php`: ```php
@include('admin::form.error')
``` 最后找到文件`app/Admin/bootstrap.php`,如果文件不存在,请更新`laravel-admin`,然后新建该文件,添加下面代码: ``` php('code'); ``` 通过这种方式,可以添加任意你想要添加的form组件。