motivo/editorjs-data-converter

此包已被弃用且不再维护。未建议替代包。

一个将 Editor.js 生成的 JSON 数据转换回 HTML 的包,以便使用。

v1.0.5 2020-04-24 10:43 UTC

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)。请参阅 许可文件 获取更多信息。