Есть ли способ загрузить библию на одной веб-странице с полным взаимодействием - PullRequest
0 голосов
/ 30 апреля 2020

Я создаю приложение-редактор и пытаюсь загрузить всю библию в редактор. Но он потребляет слишком много ресурсов и занимает несколько минут для рендеринга, не говоря уже о попытке редактировать текст и добавить некоторые функции пользовательского интерфейса, такие как перетаскивание изображений

Интересно, есть ли способ оптимизировать производительность редактора, по крайней мере, с гладким просмотром страницы.

Приложение построено с реагировать, реагировать на редукт, чертить - js и реагировать - dnd. Ссылка ниже - это «первый из Моисеев», загруженный в наше приложение.

https://www.feat.com/draft/124874/125399

ключевая структура постоянных данных

enum RewordingStatus {
 PENDING;
 REJECTED;
 APPROVED;
}

class Rewording {
  html_content: String;
  status: RewordingStatus;
  is_selected: Boolean;
}

class RewordableBlock {
  id: Number;
  status: BlockStatus;
  sort: Number;
  rewordings: Array<Rewording />
}

class Node {
  title: RewordableBlock;
  summary: RewordableBlock;
  cover: RewordableBlock;
  content: Array<RewordableBlock>;
}

Render Logi c

function NodeEdit() {
  return (
    <NodeContextProvider>
      <ReworableBlock structure="cover" />
      <ReworableBlock structure="title" />
      <ReworableBlock structure="summary" />
      {content.map((block) => (
        <ReworableBlock structure="content" />
      ))
    </NodeContextProvider>
  );
}

function ReworableBlock() {
  return (
    <div>
      <CurrentSelectedRewording />
      <PendingRewordingList />
      <HistoricRewordingList />
      <DNDActionRegion />
    </div>
  )
}

каждый ReworableBlock имеет хранилище состояний пользовательского интерфейса в избыточном

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...