前言

咳咳,终于终于终于将我的博客项目引入了markdown了,之前博客使用的是富文本编辑器,因为最近我都是使用的markdown做笔记和写博客,而自己的项目博客是个富文本编辑器这让我很不舒服,所以花了一整个晚上的时间把我的博客项目换成了markdown编辑器,让我先用这个markdown编辑器写一个博客试试哈哈哈哈!

操作步骤

引入markdown相关插件

mavonEditor

我现在博客使用的markdown编辑器是使用的是mavonEditor
我们需要使用它的话首先需要安装

npm install mavon-editor --save

然后我们在main.js中全局引用它

// 引入markdown组件
import Vue from 'vue'
import mavonEditor from 'mavon-editor'
import 'mavon-editor/dist/css/index.css'Vue.use(mavonEditor)new Vue({el: '#app',router,store,render: h => h(App)
})

随后我们便可以在项目中引用该组件,value绑定的是markdown的源内容

<div id="main"><mavon-editor v-model="value"/>
</div>

markdown中的图片上传

// 图片上传uploadImg(pos, $file) {// 定义上传uriconst uploadUri = 'img/blogImg/'// 定义上传对象var formData = new FormData()formData.append('file', $file)formData.append('uploadUri', uploadUri)uploadImage(formData).then(res => {// 将markdown插入的图片url更换为返回的ulthis.$refs.md.$img2Url(pos, res.data)})}
pos $file this.refs.md.refs.md.refs.md.img2Url
当前有插入了几张图片 文件对象 修改markdown源连接为新设置的值

更多api文档请自行查看官方文档:https://github.com/hinesboy/mavonEditor

marked

在引入了mavonEditor之后,确实是可以使用markdown编辑器写博客了,但是发现上传上去的是markdown的源代码,那得到的也只是markdown的源内容,那……谁又喜欢看这种东西呢,然后又去百度找解决的办法,发现了marked,该插件能够将markdown的内容转换为HTML格式渲染出来。
照例先安装

npm install --save marked

安装完后在需要使用到的页面引用该插件

import marked from 'marked'

然后就可以使用啦,直接调用一个方法即可转换

//  将Markdown源内容转换为HTML
this.content = marked(source)

具体使用方法可以参考
官网:https://marked.js.org/
GitHub:https://github.com/markedjs/marked

highlight

这是已经可以从Markdown转换为HTML来渲染了,但是郁闷的又来了,发现代码没有高亮显示,而且Markdown没有一点样式,非常的难看,这时又只能打开百度去找解决办法咯,就找到了highlight这个插件,这是专门用来给Markdown添加代码高亮的插件,与之相似的还有highlightjs-line-numbers.js这是用来显示行数的,但是我尝试了,好像需要JQuery才能够使用我就放弃了。
首先照例先安装

npm install --save highlight

然后在需要使用到的页面引用

// 引入代码高亮插件
import hljs from 'highlight.js'
import 'highlight.js/styles/atom-one-dark.css'
// 导入本地markdown样式
import '../../styles/markdown.css'

然后在marked转换格式之前执行一个方法

 // 展现经过markdown渲染后的htmlmarked.setOptions({renderer: new marked.Renderer(),highlight: function(code) {return hljs.highlightAuto(code).value},pedantic: false,gfm: true,tables: true,breaks: false,sanitize: false,smartLists: true,smartypants: false,xhtml: false})this.blogContent = marked(res.data.blogContent)

当然我也只用到了这一个地方如果有想了解更多的可以到GitHub上查看源代码
https://github.com/highlightjs/highlight.js/

总结

更换这个Markdown编辑器真的花了我不少时间,确实感觉前端对我来说好难好难,每次出一点小问题就需要好久才能够解决,当然自己做出来了也还是很有成就感的,毕竟是自己做出来的东西。
我的个人博客:http://oopsw.top:1001

vue项目引入markdown相关推荐

  1. markdown html vue,vue项目引入markdown

    npm install showdown 接下来是用法: export default { data () { return { 'content':'', 'converter':null } }, ...

  2. Vue项目集成Markdown标记语言编辑器(MavonEditor)

    文章目录 前言 一.可用的Markdown集成技术 二.使用步骤 1.安装mavonEditor包 2.导入并使用mavonEditor 3.官方API 总结 前言 Markdown是一种标记语言,相 ...

  3. vue项目引入CNZZ数据专家(方法汇总篇)

    vue项目引入CNZZ数据专家(方法汇总篇) 很多网站都有cnzz数据统计,用于分析网站页面受访情况. 今天就来备注一下开发经验: vue如何集成cnzz数据专家进行受访记录? 友盟+CNZZ官方文档 ...

  4. vue项目引入typescript(vue与ts混用)

    说明 为什么要在vue项目中使用ts? 新公司给了一个关于vue项目的需求,又由于ts是JavaScript的超集,强类型数据,组件化友好.故我选择在vue项目中引入ts. 下载typescript和 ...

  5. VUE项目引入微信JSSDK 实现微信自定义分享

    VUE项目引入微信JSSDK 实现自定义分享 前端vue.后端php 问题:后端获取config参数所需的url 需要和请求自定义分享页面url一致 一.微信公众号后台添加 js安全域名(白名单) 二 ...

  6. vue项目引入阿里巴巴矢量图标库 ——字体图标

    1. 打开阿里巴巴矢量图标库官网 iconfont-阿里巴巴矢量图标库 2. 下载图标步骤 (1) (2)  (3) (4) (5) (6)main.js 配置 引入assets中的图标路径 (7)页 ...

  7. 随笔-vue项目引入axios

    随笔-vue项目引入axios 本文参考链接: 一 安装axios依赖 npm install axios 二 引入axios 在main.js中引入,注意与很多第三方模块不同的是,axios不能使用 ...

  8. vue项目引入不符合ES6模块化标准的JS文件

    vue项目引入不符合ES6模块化标准的JS文件 实现方式 实现原理 实现方式 要引入的文件放在public目录下,在index.html中通过script标签引入 实现原理 参考vue官网–处理静态资 ...

  9. Vue 中引入markdown富文本编辑器并根据md格式渲染

    Vue 中引入markdown富文本编辑器 在vue组件中,比较好用的是mavon-editor,github文档地址 https://github.com/hinesboy/mavonEditor ...

  10. Vue项目引入Echarts可视化图表库教程踩坑

    Apache ECharts是一个基于 JavaScript 的开源可视化图表库,ECharts是一款基于JavaScript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表. ...

最新文章

  1. 滴滴CTO张博:我人生重要的四次选择
  2. (二)、MariaDB、Apache软件安装
  3. 【ZZ】IPv4与IPv6
  4. 深入分析 Flutter 初始化流程
  5. go加载python_python培训 | python调用go语言来提速
  6. uml学习之图书借阅简化用例图创建
  7. 上海交大发布全球首款专用光量子计算软件
  8. 《人性的弱点》--如欲采蜜,勿蹴蜂房。
  9. PHP之封装梦网云通讯短信发送类
  10. 用MACD决策树模型预测股票趋势
  11. 今晚8点,dotnet课堂全新起航,张善友/陈计节/刘腾飞我们一起来聊聊abp的故事...
  12. 劳动与社会保障法-作业
  13. Newt Scamander的恐惧
  14. 高通平台音频软件架构
  15. 如何进行SEO站内优化,让你的网站更易被搜索引擎收录
  16. 低成本无线门铃芯片_无线门铃ic选型分析
  17. 2022年武汉江岸区助企惠企政策汇总,附奖励补贴标准及申报条件
  18. 本地mysql设置成DMZ主机远程访问的方法
  19. Kotlin高仿微信-第35篇-支付-二维码收款(二维码)
  20. 四年级上册计算机知识点总结,四年级信息技术册主要知识点整理.doc

热门文章

  1. PHP 手机验证码登录
  2. C语言实现:输出明天的日期
  3. Developer Test-Jquery-常用技巧
  4. android studio scala插件,在Android Studio中使用Scala和Java
  5. (附源码)spring boot通用办事流程管理软件 毕业设计211819
  6. 实用小技巧,Python一秒将全部中文姓名转为拼音!
  7. c语言 中文转拼音,汉字转换拼音解决思路
  8. ubuntu16.04无法调节屏幕亮度
  9. pytest——fixtures
  10. (适合小白)利用百度AI开放平台实现人脸检测,对比和搜索。