markdown线上部署方案

背景

在很多的后台管理系统或者门户系统中,经常会涉及到文档的展示,比如说vue的官方网站就存在大量的文档展示。这类文档一般是由PM写好的markdown文档,而前端开发人员就需要快速地将这些md文档部署到我们项目的页面上去。这就涉及到如何将md文档部署到网页上去,展示出和md编辑器一样的效果。

markdown展示

遇到上述需求,我们脑子里的第一想法是看是否由相关的插件,答案是肯定的。网络上有很多解析markdown文档的插件,比如说vue-markdown,marked.js,showdown,mavonEditor……我在项目中选用了vue-markdown,下面说说如何使用。

  1. 要实现markdown,首先我们得安装text-loader解析导入的md文档
npm install text-loader --save-dev 
// or
yarn add text-loader
  1. 进行webpack module配置
module:{
   
    rules:[
    {
   
       test: /.md$/,
       use: 'text-loader',        
    }
  ]
}
  1. 安装md解析器vue-markdown
npm install vue-markdown --save-dev
// or
yarn add vue-markdown
  1. 在Vue文件里面引入md文件
<template>
  <div>
    <h1>
      Ninecat-ui
    </h1>
    <vue-markdown>
      {
   {
    about }}
    </vue-markdown>
  </div>
</template>

<script>
import VueMarkdown from 'vue-markdown'
import about from '../../markdown/about.md'
export default {
   
  name: 'About',
  components: {
   
    VueMarkdown
  },
  data () {
   
    return {
   
      about: about
    }
  }
}
</script>

完成上面几步,我们就可以实现最核心的md展示功能了。

关于vue-markdown更多的用法,可参考官方文档vue-markdown

md文件中添加资源文件

在写md文档时,因为文档最后要部署到网页上。所以在写图片或者视频的路径时要采用线上的地址。

如果项目的静态资源就在项目的域名下,可采用以下写法:
显示图片

<img src="/static/images/5-vue/test.jpg" width="300" />

显示视频

<video src="/static/images/5-vue/20190509_191927.mp4" controls width="300" ></video>

显示能下载文件

源代码: <a href="/static/images/5-vue/test.rar" >下载</a> html文件: <a href="/static/images/5-vue/test.html" download>下载</a> js文件: <a href="/static/images/5-vue/test.js" >下载</a>
markdown样式

到上面这一步,我们仅仅是把使用md语法写的文档在网页上使用dom展示出来,现在的样式还是标签的基本样式,所以整体页面还比较丑,接下来我们美化一下。

关于md文档的css文件网上比较多,比如说vue官方文档的样式,Typora的各种主题样式,可以自己选择一个下载下来引入到项目当中。下载下来的文件也可以根据自己的需求进行修改。
Typora主题样式
有哪些Markdown的CSS样式表推荐?
简单又好看,你的 Markdown 文稿也能加上个性化主题

至此,我们完成了页面的美化。

文档目录

通常我们在网页上查看文档时都会有相应的文档目录,阅读时滑动文档,当前文档位置对应的目录样式也会跟着改变,点击目录跳转到文档相应的位置。

vue-markdown有自动生成目录的配置选项,我在项目中选择了自己来生成文档目录。

首先编写一个生成目录的组件DocMenu.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值