godgovcn / govBlog

只有一个Index的Blog。。。
5 stars 0 forks source link

VUE下marked.js 与 highlight.js 之间的蜜汁交易 #11

Open godgovcn opened 6 years ago

godgovcn commented 6 years ago

千万不要看百度上那些垃圾文章!

因为用手机流量给电脑开的热点,所以我就用ubuntu敲的index blog(windows不知道有什么东西总是偷偷的跑我流量),总之懒得再去开ss什么的魔法伤亡去google拼命了。结果差点被百度搞死QAQ,都特么是vue1.0那会的markde与highlight的教程(而且还有好多人傻了吧唧的复制粘贴满世界跑)

还是言归正传吧

环境什么的当然是在vue-cli这么个东西下,其他的会是什么样子就不知道了。

用百度上那些教程,死活就是不给我code标签填上一个hljs样式,而且官方文档一片鸟文根本找都找不到(两个玩意的文档都是如此)

所以这里直接就用marked的code渲染模块直接手动渲染了上述的问题

import marked from "marked";
import hljs from "highlight.js";
let renderer = new marked.Renderer()
renderer.code = function(code, language) {
    return '<pre><code class="hljs '+language+'">' + hljs.highlightAuto(code).value + '</code></pre>';
};
marked.setOptions({
  renderer: renderer
});

这样碰到代码段就直接自动转换了,(至于主题什么问题,这个百度上倒是有,不做阐述233333 (就这么几行费了我一个小时。。300兆流量给垃圾度。。。

Archeb commented 6 years ago

很好,你应该和谷歌拼命,因为谷歌搜 ”marked.js highlight.js“ 第一个就是这样的解决方案... https://shuheikagawa.com/blog/2015/09/21/using-highlight-js-with-marked/