Как опубликовать данные как форматированный текст html - PullRequest
0 голосов
/ 08 мая 2020

У меня есть интерфейсное приложение, которое отправляет данные на сервер. Использование CKEditor и React Hook Form. Когда я console.log данные перед публикацией, я получаю идеальный форматированный текст html (<p><strong>). Однако, когда я проверяю данные, я вижу html сущностей (&lt;p>...s&lt;strong>). Я бы хотел, чтобы сервер получал данные так, как я вижу их во внешнем интерфейсе, как текст в формате html, чтобы я мог правильно отображать их в других частях приложения. Вот соответствующий код.

CreateArticle.jsx

...
const [ckData, setCkData] = useState(null)

...
const onSubmit = data => {
        // place tags into an array
        modifyTag(data);
        // retrive data from CKEditor, place into 'content'
        modifyContent(data)
        // 'content shows as html formatted text as intended
        console.log(data)
        // imported create article (POST) from axios.js
        createArticle(data)
            .then(res => {
                const id = res.data.data.id;
                setArticleId(id);
            })
            .catch(err => console.log(err.response.data.error))
    }

...

   const modifyContent = (data) => {
        // React Hook Form troubles with CK and handleSubmit
        // manually replace content with ckData
        data.content = ckData
    }
...
<Controller
          as={<CKEditor
          editor={ClassicEditor}
          onBlur={(event, editor) => {
          //save data to content variable
          const content = editor.getData();
          //save content to CkData hook
          setCkData(content)
          }}
        />}
   name="content" control={control}
 />
...

Есть ли для этого интерфейсное решение?

...