Базовый на Vue markdown-редактор
$ npm install mavon-editor --save
index.js
:
// Глобальная регистрация
// Импорт с использованием ES6
import Vue from 'vue'
import mavonEditor from 'mavon-editor'
import 'mavon-editor/dist/css/index.css'
// Использование
Vue.use(mavonEditor)
new Vue({
'el': '#main',
data() {
return { value: '' }
}
})
index.html
<! -- То же ниже -->
<div id="main">
<mavon-editor v-model="value"/>
</div>
имя | тип | значение по умолчанию | описание |
---|---|---|---|
value | String | Изначальное значение | |
language | String | zh-CN | Языковой переключатель, zh-CN: упрощённый китайский, en: английский, fr: французский, pt-BR: бразильский португальский, ru: русский |
fontSize | String | 15px | Размер шрифта редактируемой области |
scrollStyle | Boolean | true | Открытие стиля полосы прокрутки (временно поддерживается только в Chrome) |
boxShadow | Boolean | true | CSS: box-shadow редактора mavonEditor |
subfield | Boolean | true | true: двойные колонки - редактирование и предварительный просмотр на одном экране, одинарные колонки - иначе нет |
placeholder | String | Начните редактирование... | Текст по умолчанию при пустом текстовом поле |
editable | Boolean | true | Редактируемый переключатель |
codeStyle | String | code-github | стиль markdown: по умолчанию github, [опция цветовой схемы hljs](. /src/lib/core/hljs/lang. hljs. css. js) |
toolbarsFlag | Boolean | true | Показывать панель инструментов |
navigation | Boolean | false | Показывать навигацию |
ishljs | Boolean | true | переключатель подсветки кода |
imageFilter | Функция | null | Функция фильтрации изображений, параметры — объект File , вы должны вернуть Boolean о результате теста |
imageClick | Функция | null | Функция клика по изображению |
toolbars | Объект | Как в следующем примере | toolbars |
/*
По умолчанию все свойства панели инструментов установлены в true,
Вы можете настроить объект, чтобы перекрыть их.
Например: {
bold: true,
italic: true,
header: true,
}
В этом случае панель инструментов отображает только три функциональные кнопки.
*/
toolbars: {
bold: true,
italic: true,
header: true,
underline: true,
strikethrough: true,
mark: true,
superscript: true,
subscript: true,
quote: true,
ol: true,
ul: true,
link: true,
imagelink: true,
code: true,
table: true,
fullscreen: true,
readmodel: true,
htmlcode: true,
help: true,
/* 1. 3. 5 */
undo: true,
redo: true,
trash: true,
save: true,
/* 1.```markdown
4. 2 */
navigation: true,
/* 2. 1. 8 */
alignleft: true,
aligncenter: true,
alignright: true,
/* 2. 2. 1 */
subfield: true,
preview: true
}
имя | параметры | описание |
---|---|---|
change | String: value , String: render | Обратный вызов события изменения редактируемой области (render: исходный код HTML) |
save | String: value , String: render | Ctrl+s и нажатие кнопки сохранения |
fullScreen | Boolean: status , String: value | Обратный вызов события переключения полноэкранного режима (boolean: статус полноэкранного режима) |
readModel | Boolean: status , String: value | Обратный вызов события переключения режима чтения (boolean: статус режима чтения) |
htmlCode | Boolean: status , String: value | Обратный вызов события переключения режима HTML-кода (boolean: статус) |
subfieldToggle | Boolean: status , String: value | Обратный вызов события переключения режима двойных колонок (boolean: статус двойных колонок) |
previewToggle | Boolean: status , String: value | Обратный вызов события переключения режима предварительного просмотра (boolean: статус предварительного просмотра) |
helpToggle | Boolean: status , String: value | Обратный вызов события переключения режима помощи (boolean: статус помощи) |
navigationToggle | Boolean: status , String: value | Обратный вызов события переключения режима навигации (boolean: статус навигации) |
imgAdd | String: имя файла, File: изображение | Обратный вызов события добавления файла изображения (имя файла: записывается в исходный md, File: объект типа File) |
#### Выделение кода
> Если вам не требуется выделение кода, установите ishljs в false
Установите ishljs = true
```javascript
// значение по умолчанию true
<mavon-editor :ishljs = "true"></mavon-editor>
Для оптимизации размера пакета, начиная с v2.4.2, следующие файлы по умолчанию будут использовать cdnjs
:
highlight.js
github-markdown-css
katex
(v2.4.7)
Файлы парсинга языка и выделения кода в highlight.js
будут загружаться по требованию.
github-markdown-css
и katex
будут загружаться только при монтировании.
Внимание:
Опция схемы цветов hljs и Поддерживаемые языки экспортируются из highlight.js/9.12.0
без cdn, Нажмите здесь для локальной загрузки по требованию. . . #### Загрузка изображений
<template>
<mavon-editor ref=md @imgAdd="$imgAdd" @imgDel="$imgDel"></mavon-editor>
</template>
export default {
methods: {
// привязка @imgAdd события
$imgAdd(pos, $file){
// шаг 1. загрузка изображения на сервер.
var formdata = new FormData();
formdata.append('image', $file);
axios({
url: 'адрес сервера',
method: 'post',
data: formdata,
headers: { 'Content-Type': 'multipart/form-data' },
}).then((url) => {
// шаг 2. замена url ! [. . . ](0) -> ! [. . . ](url)
$vm.$img2Url(pos, url);
})
}
}
}
[более информации о загрузке изображений . . .](. /doc/en/upload-images. md)
клавиша | keycode | функция |
---|---|---|
F8 | 119 | переключение навигации |
F9 | 120 | переключение [редактирование/просмотр] |
F10 | 121 | переключение полноэкранного режима |
F11 | 122 | переключение readModel |
F12 | 123 | переключение [двойные колонки / одинарная колонка] |
TAB | 9 | \t |
CTRL + S | 17 + 83 | @save |
CTRL + D | 17 + 68 | удаление выбранных строк |
CTRL + Z | 17 + 90 | предыдущий шаг |
CTRL + Y | 17 + 89 | следующий шаг |
CTRL + BreakSpace | 17 + 8 | корзина |
CTRL + B | 17 + 66 | жирный |
CTRL + I | 17 + 73 | курсив |
CTRL + H | 17 + 72 | # Заголовок |
CTRL + U | 17 + 85 | ++подчеркивание++ |
CTRL + M | 17 + 77 | ==выделение== |
CTRL + Q | 17 + 81 | > Цитата |
CTRL + O | 17 + 79 | 1. Нумерованный список |
CTRL + L | 17 + 76 | ссылка |
CTRL + ALT + S | 17 + 18 + 83 | ^верхний индекс^ |
CTRL + ALT + U | 17 + 18 + 85 | - нижний индекс |
CTRL + ALT + C | 17 + 18 + 67 | ``` Код |
CTRL + ALT + L | 17 + 18 + 76 | ! Ссылка на изображение |
CTRL + ALT + T | 17 + 18 + 84 | Таблица |
CTRL + SHIFT + S | 17 + 16 + 83 | |
CTRL + SHIFT + D | 17 + 16 + 68 | |
CTRL + SHIFT + C | 17 + 16 + 67 | выравнивание по центру |
CTRL + SHIFT + L | 17 + 16 + 76 | выравнивание по левому краю |
CTRL + SHIFT + R | 17 + 16 + 82 | выравнивание по правому краю |
SHIFT + TAB | 16 + 9 | удаление \t |
mavonEditor является открытым исходным кодом и распространяется под лицензией MIT. Copyright (c) 2017 hinesboy
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )