Шифер: нажмите на базу данных и показать в Интернете - PullRequest
0 голосов
/ 31 августа 2018

Как я могу отправить содержимое редактора с помощью slate.js в базу данных и как я могу получить этот контент, чтобы он отображался на моей веб-странице?

1 Ответ

0 голосов
/ 27 декабря 2018

Вы должны проверить эту документацию: https://docs.slatejs.org/walkthroughs/saving-to-a-database

import { Editor } from 'slate-react'
import Plain from 'slate-plain-serializer'
​
const existingValue = localStorage.getItem('content')
const initialValue = Plain.deserialize(
  existingValue || 'A string of plain text.'
)
​
class App extends React.Component {
  state = {
    value: initialValue,
  }
​
  onChange = ({ value }) => {
    if (value.document != this.state.value.document) {
      const content = Plain.serialize(value)

      //HERE YOU SAVE TO DB
    }
​
    this.setState({ value })
  }
​
  render() {
    return <Editor value={this.state.value} onChange={this.onChange} />
  }
}

// ЗДЕСЬ ВЫ СОХРАНИТЕ В БД Я сохраняю это так:

let res = await fetch('/save', {
  method: 'POST',
  headers: {
    Accept: 'application/json',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    data: content
  })
})
...