TransFlow/node_modules/mavon-editor/doc/cn/no-cnd.md

117 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### 本地按需加载
如果你想自己引入而不希望`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`和上面一样)
```javascript
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')
}]),
// ...
],
// ...
}
```
然后你需要给`mavon-editor`设置`externalLink`
相关代码如下所示:
(假定你的`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`)
```javascript
<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) {
// 这是你的代码高亮配色文件路径
return '/highlightjs/styles/' + css + '.min.css';
},
hljs_lang: function(lang) {
// 这是你的代码高亮语言解析路径
return '/highlightjs/languages/' + lang + '.min.js';
},
katex_css: function() {
// 这是你的katex配色方案路径路径
return '/katex/katex.min.css';
},
katex_js: function() {
// 这是你的katex.js路径
return '/katex/katex.min.js';
},
}
}
},
}
</script>
```
**Notice**: 如果你想禁用`mavon-editor`的自动加载,
可以将`externalLink`设置为`false`或`externalLink`中的某函数值设置为`false`
如:
```javascript
export default {
// ...
data() {
return {
externalLink: false, // 这里只能为`true`/`false`和一个`Object`, 如果为`true`代表全使用外链且自动加载, 如果为`false`则禁用,如果为`Object`则如上所示
}
}
// ...
}
```
或者:
```javascript
export default {
// ...
data() {
return {
externalLink: {
hljs_css: function(css) {
// 这是你的代码高亮配色文件路径
return '/highlightjs/styles/' + css + '.min.css';
},
katex_css: false, // `false`表示禁用自动加载,它也可以是个函数,如果它是个函数,那么这个函数应该返回一个可访问的`katex`的css路径字符串
// 我们没有设置`katex_js`, `hljs_js`, `hljs_lang`, `markdown_css` `mavon-editor`会认为它的值为`true`,它会默认使用`cdnjs`相关外链加载
},
}
}
// ...
}
```