vue使用showdown并实现代码区域高亮的示例代码


Posted in Javascript onOctober 17, 2019

前言:当我们想把makedown文档转译为html在网页上显示,并且能漂亮的展示出自己想要的网页形式,接下来我给大家介绍插件来达到我们所想要的功能。
注:下面安装及使用方式是基于vue进行滴。

1、安装showdown

npm install showdown --save

2、将showdown引入到使用的页面中

<template>
  <div v-html="htms"></div> 
</template>

<script>
import showdown from "showdown"
converter.setOption('tables', true);  // 将表格显示出来
export default {
  data() {
    return {
      htms: ""
    }
  },
  created() {
    this.setMakedown()
  },
  methods: {
    setMakedown() {
     this.htms = converter.makeHtml('# 这是一个标题')
    }
  }
}
</script>

最终展示效果

vue使用showdown并实现代码区域高亮的示例代码

但是这时有个问题出现,如果我们去添加代码块儿时,代码是统一颜色,代码块也没有背景色,同时也没有高亮样式,接下来我们解决代码没有高亮问题。

1、安装highlight

npm install highlight --save

2、 在main.js添加自定义指令

import hljs from "highlight.js"
import 'highlight.js/styles/default.css';

// 定义自定义指令 highlight 代码高亮
Vue.directive('highlight',function (el) {
 let blocks = el.querySelectorAll('pre code');
 blocks.forEach((block)=>{
  hljs.highlightBlock(block)
 })
})

3、 将“ v-highlight ”添加到使用的div标签上

<template>
  <div v-html="htms" v-highlight></div> 
</template>

效果如下:

vue使用showdown并实现代码区域高亮的示例代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
escape、encodeURI、encodeURIComponent等方法的区别比较
Dec 27 Javascript
Javascript学习笔记二 之 变量
Dec 15 Javascript
js计算字符串长度包含的中文是utf8格式
Oct 15 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
Aug 27 Javascript
JavaScript数组前面插入元素的方法
Apr 06 Javascript
Bootstrap3 input输入框插入glyphicon图标的方法
May 16 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
Jul 07 Javascript
jQuery实现的省市联动菜单功能示例【测试可用】
Jan 13 Javascript
JS 组件系列之BootstrapTable的treegrid功能
Jun 16 Javascript
BootStrap Table前台和后台分页对JSON格式的要求
Jun 28 Javascript
手把手教你用Node.js爬虫爬取网站数据的方法
Jul 05 Javascript
简述ES6新增关键字let与var的区别
Aug 23 Javascript
vue-devtools的安装和使用步骤详解
Oct 17 #Javascript
express中static中间件的具体使用方法
Oct 17 #Javascript
在Express中提供静态文件的实现方法
Oct 17 #Javascript
微信小程序一周时间表功能实现
Oct 17 #Javascript
mpvue 页面预加载新增preLoad生命周期的两种方式
Oct 17 #Javascript
JS工厂模式开发实践案例分析
Oct 17 #Javascript
小程序input数据双向绑定实现方法
Oct 17 #Javascript
You might like
一些被忽视的PHP函数(简单整理)
2010/04/30 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
PHP函数shuffle()取数组若干个随机元素的方法分析
2016/04/02 PHP
form自动提交实例讲解
2017/07/10 PHP
浅谈php使用curl模拟多线程发送请求
2019/03/08 PHP
js form action动态修改方法
2008/11/04 Javascript
Extjs4中tree的拖拽功能(可以两棵树之间拖拽) 简单实例
2013/12/08 Javascript
jquery事件重复绑定的快速解决方法
2014/01/03 Javascript
javascript控制图片播放的实现代码
2020/07/29 Javascript
jQuery Select下拉框操作小结(推荐)
2016/07/22 Javascript
JQuery遍历元素的父辈和祖先的方法
2016/09/18 Javascript
jQuery动态产生select option下拉列表
2017/03/15 Javascript
使用JavaScriptCore实现OC和JS交互详解
2017/03/28 Javascript
微信小程序--组件(swiper)详细介绍
2017/06/13 Javascript
antd组件Upload实现自己上传的实现示例
2018/12/18 Javascript
vue-cli3跨域配置的简单方法
2019/09/06 Javascript
vue实现分页加载效果
2019/12/24 Javascript
[01:19]2014DOTA2国际邀请赛 采访TITAN战队ohaiyo 能赢DK很幸运
2014/07/12 DOTA
利用Python绘制MySQL数据图实现数据可视化
2015/03/30 Python
python引用DLL文件的方法
2015/05/11 Python
Python线程详解
2015/06/24 Python
python中MethodType方法介绍与使用示例
2017/08/03 Python
numpy matrix和array的乘和加实例
2018/06/28 Python
Python同时迭代多个序列的方法
2020/07/28 Python
浅析NumPy 切片和索引
2020/09/02 Python
世界上最大的家庭自动化公司:Smarthome
2017/12/20 全球购物
介绍一下MD5加密算法
2016/11/12 面试题
中专生毕业自我鉴定
2013/11/01 职场文书
40岁生日感言
2014/02/15 职场文书
企业道德讲堂实施方案
2014/03/19 职场文书
捐款活动总结
2014/08/27 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
企业培训简报范文
2015/07/20 职场文书
Golang二维数组的使用方式
2021/05/28 Golang
实例讲解Python中sys.argv[]的用法
2021/06/03 Python
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL