1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/liuhong1happy-react-umeditor

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 6.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 05:20 301cf55

React-umeditor

React Editor, похожий на Umeditor (https://github.com/fex-team/umeditor).

Установка

npm install react-umeditor --save

Использование JavaScript:

var React = require('react');
var Editor = require('react-umeditor');

class App extends React.Component {
    constructor(props){
        super(props);
        this.state = {
            content: ""
        }
    }
    handleChange(content){
        this.setState({
            content: content
        })
    }
    getIcons(){
        var icons = [
            "source | undo redo | bold italic underline strikethrough fontborder emphasis | ",
            "paragraph fontfamily fontsize | superscript subscript | ",
            "forecolor backcolor | removeformat | insertorderedlist insertunorderedlist | selectall | ",
            "cleardoc  | indent outdent | justifyleft justifycenter justifyright | touppercase tolowercase | ",
            "horizontal date time  | image emotion spechars | inserttable"
        ]
        return icons;
    }
    getPlugins(){
        return {
            "image": { 
                "uploader": { 
                    "name":"file", 
                    "url": "/api/upload" 
                } 
            } 
        }
    }
    render(){
        var icons = this.getIcons();
        var plugins = this.getPlugins();
        return (<Editor ref="editor" 
            icons={icons} 
            value={this.state.content} defaultValue="<p>React Umeditor</p>" 
            onChange={this.handleChange.bind(this)} 
            plugins={plugins} />)
    }
}

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Editor Demo</title>
    
    <!-- mathquill & umeditor stylesheet & if you have the formula icon -->
    <link rel="stylesheet" href="../../dist/third-part/mathquill/mathquill.css"/>
    
    <link rel="stylesheet" href="app.css" type="text/css" />
</head>
<body>
    <div id="react-container"></div>
    
    <!-- jquery & mathquill javascript & if you have the formula icon -->
    <script src="../../dist/third-part/jquery.min.js"></script>
    <script src="../../dist/third-part/mathquill/mathquill.js"></script>
    
    <!-- your react script -->
    <script src="bundle.js"></script>
    <script src="app.js"></script>
</body>
</html>

Пример

Функции Ref Вы можете использовать this.refs.editor.xxx()! Возможные значения xxx:

  • findDOMNode: поиск ссылок по именам «root», «editarea», «toolbar», «color»;
  • setContent: установка HTML редактора;
  • getContent: получение HTML редактора;
  • focusEditor: фокусировка редактора.

Свойства Можно установить свойства! Возможные свойства:

  • onFocus: событие фокуса;
  • onChange: событие изменения текста { content: string };
  • defaultValue: значение по умолчанию редактора;
  • value: значение редактора;
  • icons: значки панели инструментов;
  • plugins: настройки плагинов;
    • toolbar: настройки панели инструментов;
      • icons: пользовательские значки;
        • name: имя значка;
        • title: заголовок значка;
        • onIconClick: обработка события;
        • mapRangeState: фильтрация rangeState;
        • props: реквизиты значка и компонента;
        • component: пользовательский компонент, например, диалог;
    • image: настройки диалога изображений;
      • uploader: настройки загрузчика изображений;
        • name: имя формы XHR;
        • url: URL сервера;
        • data: другие данные формы XHR;
        • filter: фильтр JSON-стиля тела;
      • customUploader: пользовательский загрузчик файлов (см. FileUploader (./src/utils/FileUpload.js)).

Значки Поддерживаются значки, такие как:

source undo redo bold italic underline strikethrough fontborder emphasis 
paragraph fontfamily fontsize superscript subscript 
forecolor backcolor removeformat insertorderedlist insertunorderedlist  selectall 
cleardoc ## Снимок

![снимок](editor.png)

Разработка

// клонирование кода
git clone https://github.com/liuhong1happy/react-umeditor
cd react-umeditor
// установка зависимостей
npm install
// сборка
npm run build
// запуск примера сервера
cd example
npm run example

Задачи — версия 1.0

  • 1. Пользовательские свойства загрузчика изображений.
  • 2. Пользовательский значок панели инструментов.
  • 3. Стиль ES6.
  • 4. React16.
  • 5. Тесты (панель инструментов, пример и новая функция).
  • 6. Документация (README.md, документация и примеры документации).

Вклад

Изменения и улучшения приветствуются! Не стесняйтесь создавать форки и открывать запросы на вытягивание. Пожалуйста, вносите изменения в определённой ветке и запрашивайте их перенос в основную ветку! Если возможно, перед отправкой PR убедитесь, что редактор полностью работает, так как это поможет ускорить процесс.

Подробнее см. в документе.

Контакты

Email: liuhong1.happy@163.com

QQ Group: 247978846

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/liuhong1happy-react-umeditor.git
git@api.gitlife.ru:oschina-mirror/liuhong1happy-react-umeditor.git
oschina-mirror
liuhong1happy-react-umeditor
liuhong1happy-react-umeditor
master