motivo / editorjs-data-converter
此包已被弃用且不再维护。未建议替代包。
一个将 Editor.js 生成的 JSON 数据转换回 HTML 的包,以便使用。
v1.0.5
2020-04-24 10:43 UTC
Requires
- php: ^7.1.3
- ext-json: *
- illuminate/support: ~5.7.0|~5.8.0|^6.0|^7.0
- spatie/laravel-html: ^2.24|^2.25|^2.26
Requires (Dev)
- beyondcode/laravel-dump-server: ^1.2|^1.3|^1.4
- friendsofphp/php-cs-fixer: ^2.15
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2021-07-30 09:53:28 UTC
README
将 Editor.js 生成的 JSON 数据转换回 HTML 的包。
安装
您可以在项目中运行以下命令来安装此包
composer require motivo/editorjs-data-converter
如果您想扩展基本功能,应运行以下命令
php artisan vendor:publish --provider="\Motivo\EditorJsDataConverter\EditorJsServiceProvider"
如果您未指定提供者,应发布以下标签: editorjs-config
。
如何使用
要将 JSON 字符串转换为 HTML,您需要执行以下操作
resolve(DataConverter::class)->init(json_decode($jsonContent))
如何扩展包的使用。
您应该在应用程序目录中创建一个名为 "Converters" 的文件夹。在该文件夹中,您可以添加一个实现 Converter
接口的类。
该接口期望一个 toHtml
函数。
以下是一个小型转换器示例。
<?php namespace App\Converters; use Illuminate\Support\Arr; use Motivo\EditorJsDataConverter\Converters\Contracts\Converter; use Motivo\EditorJsDataConverter\Traits\WithHtml; class ParagraphConverter implements Converter { use WithHtml; public function toHtml(array $itemData): string { return $this->html ->element('p') ->addClass('h3') ->html(Arr::get($itemData, 'text', '')); } }
上述转换器将覆盖默认的 ParagraphConverter
。如果您使用自定义前端插件为 Editor.js,请确保也保存了插件类型。
这是必要的,因为我们使用以下命名约定: 类型
Converter,以确定我们需要使用哪些转换器。
测试
make test
许可
Mozilla 公共许可证版本 2.0 (mpl-2.0)。请参阅 许可文件 获取更多信息。