laravel-admin自定義百度編輯器

       博主最近在開發一個功能時,需要用到編輯器,因爲是使用Laravel-admin系統,但是Laravel-admin自帶的編輯器有點不夠用(其實是醜,哈哈),所以決定自定義百度編輯器,下面將爲大家分享如何自定義百度編輯器。

       一、下載ueditor樣式文件

       首先我們先去ueditor下載所需的JS、css文件,並保存在項目根目錄下的public/vendor下,傳送門->ueditor,路徑如下:

       二、創建自定義編輯器模板文件      

       然後我們在項目根目錄下的resources/views下新建一個UEditor.blade.php的模板文件,代碼如下:

<div class="form-group {!! !$errors->has($errorKey) ?: 'has-error' !!}">
    <label for="{{$id}}" class="col-sm-2 control-label">{{$label}}</label>
<div class="col-sm-8">
    @include('admin::form.error')
    <textarea class="{{ $class }}" id="{{$name}}" name="{{$name}}" 
       placeholder="{{ $placeholder }}" {!! $attributes !!} >
       {{ old($column, $value) }}
    </textarea>
    @include('admin::form.help-block')
</div>
</div>

 路徑如下:

      三、創建控件文件

      完成模板文件的創建,我們接下來便開始新建一個控件UEditor.php的文件,代碼如下:

<?php
/**
 * Created by PhpStorm.
 * User: pc001
 * Date: 2018/10/8
 * Time: 16:31
 */

namespace App\Admin\Extensions;

use Encore\Admin\Form\Field;

class UEditor extends Field
{
    protected static $css = [
    ];
    public static $isJs=false;
    protected static $js = [
        'vendor/ueditor/ueditor.config.js',
        'vendor/ueditor/ueditor.all.js',
    ];
    protected $view = 'UEditor';
    public function render()
    {
        $this->script = <<<EOT
        UE.delEditor('{$this->id}');
             var  ue = UE.getEditor('{$this->id}');
             
EOT;
        return parent::render();
    }
}

路徑如下:

      四、配置文件配置

      完成以上操作之後,我們便在跟目錄下的app/Admin下的bootstrap.php文件下進行配置,代碼如下:

use Encore\Admin\Form;
use App\Admin\Extensions\UEditor;

Encore\Admin\Form::forget(['map']);
Form::extend('ueditor', UEditor::class);

      五、調用自定義控件

      完成以上所有操作,我們便可以在我們的控制器中調用我們的自定義百度編輯器的了,調用如下:

$form->ueditor('rule', '抽獎規則');

      效果如下:

      這樣我們便完成了自定義編輯器~

      更多文章請關注微信公衆號

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章