Vue中使用highlight.js

通过自定义指令的方式来实现在Vue中实现语法高亮

基本实现

  • 安装
npm install highlight.js --save

  • 编码
// Vue-cli生成的工程文件的src/main.js
import hljs from 'highlight.js'
import 'highlight.js/styles/googlecode.css' //样式文件

Vue.directive('highlight', function (el) {
  let blocks = el.querySelectorAll('pre code');
  blocks.forEach((block) => {
    hljs.highlightBlock(block)
  })
})
  • 使用
<div v-html="markdownhtml" v-highlight></div>

封装成插件

  • 编写插件
// highlight.js
import Vue from 'vue'
import Hljs from 'highlight.js'
import 'highlight.js/styles/googlecode.css'

let Highlight = {}
Highlight.install = function (Vue, options) {
  Vue.directive('highlight', function (el) {
    let blocks = el.querySelectorAll('pre code');
    blocks.forEach((block) => {
      Hljs.highlightBlock(block)
    })
  })
}

export default Highlight
  • 使用插件
import Highlight from 'path/to/Highlight.js'
Vue.use(Highlight)

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/12/using-highlight-js-in-vue/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
Vue中使用highlight.js
通过自定义指令的方式来实现在Vue中实现语法高亮 基本实现 安装 npm install highlight.js --save 编码 // Vue-cli生成的工程文件的src/main.js import h……
<<上一篇
下一篇>>
文章目录
关闭
目 录