vue中使用mavon-editor,关闭cdn加载,使用本地按需加载

官方解决方式

官方的解决方式=>

官方的解决方式获取不到highlight代码段的css,而且没有配置公共路径,导入的资源也过多
只能获取到node_modules/mavon-editor/dist/highlightjs,但是获取不到node_modules/mavon-editor/dist/highlightjs/style,导致缺少代码段的css,手动import导入

个人修改

在vue.config.js中

module.exports = {
  configureWebpack: {
    plugins: [
      // ...
      new CopyWebpackPlugin([
        {
          from: 'node_modules/mavon-editor/dist/highlightjs/highlight.min.js',
          to: path.resolve(__dirname, 'dist/markdown/highlightjs') // 插件将会把文件导出在dist/markdown/xxx
        },
        {
          from: 'node_modules/mavon-editor/dist/markdown',
          to: path.resolve(__dirname, 'dist/markdown/markdown')
        },
        {
          from: 'node_modules/mavon-editor/dist/katex', 
          to: path.resolve(__dirname, 'dist/markdown/katex')
        }
      ])
      // ...
    ]
  }
};

在需要使用mavon-editor的组件中。代码片段使用github,其余主题替换相应位置

注意:部署后公共路径的修改,vue.config.js的publicPath不会作用在这里

<mavon-editor
  v-model="blog.content"
  :subfield="false"
  codeStyle="github"
  :externalLink="externalLink"
  :ishljs="true"
/>
// 自行导入样式
import '@/assets/markdown/github.css';

let publicPath = '';
if (process.env.NODE_ENV === 'production') {
  publicPath = '/public';
}
export default {
  name: 'Blog',
  data() {
    return {
      blog: {},
      code_style: 'github',
      externalLink: {
        markdown_css: function() {
          // 这是你的markdown css文件路径
          return publicPath + '/markdown/markdown/github-markdown.min.css';
        },
        hljs_js: function() {
          // 这是你的hljs文件路径
          return publicPath + '/markdown/highlightjs/highlight.min.js';
        },
        hljs_css: false,
        katex_css: function() {
          // 这是你的katex配色方案路径路径
          return publicPath + '/markdown/katex/katex.min.css';
        },
        katex_js: function() {
          // 这是你的katex.js路径
          return publicPath + '/markdown/katex/katex.min.js';
        }
      }
    };
  },
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值