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

OSCHINA-MIRROR/Moon-Online-Judge-mavonEditor

Клонировать/Скачать
no-cnd.md 5.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 05.06.2025 08:16 c137752

Локальная загрузка по требованию

Если вы хотите самостоятельно импортировать и не хотите, чтобы mavon-editor загружался, вы можете установить externalLink в false.Если вы хотите использовать локальную загрузку по требованию, вам необходимо установить плагин copy-webpack-plugin (npm install copy-webpack-plugin -D). Настройте webpack следующим образом: (предполагается, что файл конфигурации webpack находится в /webpack/webpack.js вашего проекта, а вы хотите экспортировать файлы hljs и markdown в /dist/highlightjs и /dist/markdown вашего проекта, katex аналогично)

var CopyWebpackPlugin = require('copy-webpack-plugin');
module.exports = {
      // .  .  .
      plugins: [
          // .  .  .
          new CopyWebpackPlugin([{
              from: 'node_modules/mavon-editor/dist/highlightjs',
              to: path.resolve(__dirname, '../dist/highlightjs'), // плагин будет копировать файлы в /dist/highlightjs
          }, {
              from: 'node_modules/mavon-editor/dist/markdown',
              to: path.resolve(__dirname, '../dist/markdown'), // плагин будет копировать файлы в /dist/markdown
          }, {
              from: 'node_modules/mavon-editor/dist/katex', // плагин будет копировать файлы
              to: path.resolve(__dirname, '../dist/katex')
          }]),
          // .  .  .
      ],
      // .  .  .
  }

Затем вам нужно настроить externalLink для mavon-editor. Соответствующий код приведен ниже: (предположим, что ваш web-корневой каталог находится в /dist/ вашего проекта, ваш сайт — www.site.com, тогда markdown, hljs_js, hljs_css, hljs_lang, katex_css, katex_js возвращают соответствующие пути файлов на вашем сайте, например, www.site.com/markdown/github-markdown.min.css соответствующий файл должен находиться в /dist/markdown/github-markdown.min.css вашего проекта)

<template>
    <div id="app">
        <mavon-editor
        :subfield = "subfield"
        :code_style="code_style"
        :ishljs="true"
        :externalLink="externalLink"
```       ></mavon-editor>
    </div>
  </template>
  <script>
  export default {
      data () {
        return {
          subfield: true,
          code_style: 'solarized-dark',
          externalLink: {
              markdown_css: function() {
                  // это путь к вашему файлу markdown css
                  return '/markdown/github-markdown.min.css';
              },
              hljs_js: function() {
                  // это путь к вашему файлу hljs
                  return '/highlightjs/highlight.min.js';
              },
              hljs_css: function(css) {
                  // это путь к вашему файлу стилей hljs
                  return '/highlightjs/styles/' + css + '.min.css';
              },
              hljs_lang: function(lang) {
                  // это путь к вашему файлу языка hljs
                  return '/highlightjs/languages/' + lang + '.min.js';
              },
              katex_css: function() {
                  // это путь к вашему файлу стилей katex
                  return '/katex/katex.min.css';
              },
              katex_js: function() {
                  // это путь к вашему файлу katex.js
              }
          }
        }
      }
  }
  </script>

**Внимание**: Если вы хотите отключить автоматическую загрузку `mavon-editor`, вы можете установить `externalLink` в `false` или установить значение функции в `externalLink` в `false`.
Пример:
```javascript
export default {
    // .  .  .
    data() {
        return {
            externalLink: false, // Здесь может быть только `true`/`false` и `Object`, если `true`, то это означает использование внешних ссылок и автоматическую загрузку, если `false`, то загрузка отключена, если `Object`, то как показано выше
        }
    }
    // .  .  .
}

или:

export default {
    // .  .  .
    data() {
        return {
            externalLink: {
                hljs_css: function(css) {
                    // Это путь к вашему файлу с цветовой схемой для подсветки кода
                    return '/highlightjs/styles/' + css + '.min.css';
                }
            }
        }
    }
    // .  .  .
}
``````markdown
                },
                 katex_css: false, // `false` означает отключение автоматической загрузки. Это также может быть функцией, если это функция, она должна возвращать строку с путем к файлу CSS для katex
                 // Мы не устанавливаем `katex_js`, `hljs_js`, `hljs_lang`, `markdown_css`, `mavon-editor` будет считать их `true` и будет использовать по умолчанию внешние ссылки с `cdnjs` для загрузки
             },
         }
     }
 // .  .  .
 }

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

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

1
https://api.gitlife.ru/oschina-mirror/Moon-Online-Judge-mavonEditor.git
git@api.gitlife.ru:oschina-mirror/Moon-Online-Judge-mavonEditor.git
oschina-mirror
Moon-Online-Judge-mavonEditor
Moon-Online-Judge-mavonEditor
master