dmitrybubyakin / nova-quill-field
一个 Laravel Nova 字段。
此包的官方仓库似乎已消失,因此该包已被冻结。
0.0.3
2019-04-22 11:45 UTC
Requires
- php: >=7.1.0
This package is auto-updated.
Last update: 2022-02-22 18:31:45 UTC
README
安装
composer require dmitrybubyakin/nova-quill-field
使用方法
Quill::make('Body') ->rules('required') ->imageRules('max:2000') // Image validation rules ->alwaysShow() ->storeImagesUsing(function (UploadedFile $file, Request $request) { // Use spatie/laravel-medialibrary to store images return (new static::$model)->newInstance(['uuid' => $request->uuid], true) ->addMedia($file) ->toMediaCollection() ->getFullUrl(); // Return URL }, ['uuid' => $this->resolveUuid()]) // These attributes will be accessible from the request in the store callback ->toolbar([ // Customize toolbar [['header' => 1], ['header' => 2]], [['align' => ''], ['align' => 'center'], ['align' => 'right'], ['align' => 'justify']], ['bold', 'italic', 'underline', 'strike'], ['blockquote', 'code'], [['list' => 'ordered']], ['clean'], ['link', 'image'] ]) ->placeholder('Write down something...'), // Customize placeholder
事件
nova-quill-field:loaded
— 仅调用一次。您可以在其中注册一些全局模块。nova-quill-field:ready
— 每次组件挂载时调用。您可以在其中配置 Quill 实例。
import ImageUploader from './ImageUploader' // Override Image Uploader Nova.$once('nova-quill-field:loaded', Quill => { Quill.register('modules/imageUploader', ImageUploader) }) // Add icons Nova.$once('nova-quill-field:loaded', Quill => { const icons = Quill.import('ui/icons') icons['fullscreen'] = require('!html-loader!../icons/fullscreen.svg') icons['fullscreenExit'] = require('!html-loader!../icons/fullscreen-exit.svg') }) Nova.$on('nova-quill-field:ready', ({ field, quill }) => { if (field.attribute !== 'needed-field') return quill.keyboard.addBinding({ key: 'F', shortKey: true, shiftKey: true, handler (range, context) { // do something... } }) })