实现Vue的markdown文档可以在线运行的方法示例


Posted in Javascript onDecember 11, 2018

markdown 文档中Vue代码 可执行啦,而且可以边看边执行。这样就可以用markdown文档的形式,写自己的Vue博客了, 可以方便介绍自己的原创组件,很酷的执行。

Github

https://github.com/zhangKunUserGit/vue-markdown-run

DEMO

https://zhangkunusergit.github.io/vue-markdown-run/dist/

安装

npm install vue-markdown-run --save

用法

(1)完整引入

// 引入
import MarkdownRun from 'vue-markdown-run';
// 全局注入
Vue.use(MarkdownRun);

(2)按需引入

借助 babel-plugin-component ,我们可以只引入需要的组件,以达到减小项目体积的目的。

首先,安装 babel-plugin-component:

npm install babel-plugin-component -save-dev

然后,将 .babelrc 修改为:

{
 "plugins": [
  [
   "component",
   {
    "libraryName": "vue-markdown-run",
    "styleLibraryName": "theme"
   }
  ]
 ]
}

接下来,如果你只需引入部分组件,写入以下内容:

import { MarkdownRun } from 'vue-markdown-run';

export default {
 components: {
  MarkdownRun
 }
}

组件的用法

<markdown-run
  :mark="markdownTxt"
  highlight-style-file-name="github"
  :runClass=""
  :runStyle=""
  @error=""
 />

参数说明

参数 默认值 说明
:mark 必传(String) markdown文本字符串(具体要求请看下面的“markdownTxt 写法要求”)
:scope 非(Object) markdown文本中,引入的组件,如果不想全局引入,可以局部引入,用法请看上面的DEMO
highlight-style-file-name 非(String) 'github' markdown代码部分样式文件名,此处是指定引入那种样式(css)文件 详细请参考:https://highlightjs.org/stati... 中Styles
:runClass 非(String) Vue运行代码处的css样式名称
:runStyle 非(Object) Vue运行代码处的行间样式名称
@error 非(Function) 当前组件执行失败的回调函数

markdownTxt 写法要求

代码中必须指定哪个组件是需要执行的,在上面写上 vue-run , 否则认为是普通文本,不予执行。

vue-run 放在语言类型后面,需要空格,例如:

```html vue-run
<template>
 <div @click="go">Hello, {{name}}! 你可以点击试试</div>
</template>

<script>
 export default {
  data() {
   return {
    name: 'Vue'
   }
  },
 methods: {
   go () {
    alert('点击弹出, 代码vue已执行');
   }
  }
 }
</script>
<style>
 div{
 background-color: red;
 }
</style>

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

Javascript 相关文章推荐
拖拉表格的JS函数
Nov 20 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
Dec 18 Javascript
jQuery实现Tab选项卡切换效果简单演示
Nov 23 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
Mar 02 Javascript
JavaScript实现QQ聊天消息展示和评论提交功能
May 22 Javascript
vue-resouce设置请求头的三种方法
Sep 12 Javascript
Angularjs 根据一个select的值去设置另一个select的值方法
Aug 13 Javascript
jquery实现的简单轮播图功能【适合新手】
Aug 17 jQuery
IE9 elementUI文件上传的问题解决
Oct 17 Javascript
基于Vue2实现简易的省市区县三级联动组件效果
Nov 05 Javascript
基于node.js实现爬虫的讲解
Feb 18 Javascript
vue基于better-scroll实现左右联动滑动页面
Jun 30 Javascript
JS中使用new Option()实现时间联动效果
Dec 10 #Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
Dec 10 #Javascript
移动端如何用下拉刷新的方式实现上拉加载
Dec 10 #Javascript
vue+Element-ui实现分页效果实例代码详解
Dec 10 #Javascript
JQuery实现ajax请求的示例和注意事项
Dec 10 #jQuery
微信小程序实现动态获取元素宽高的方法分析
Dec 10 #Javascript
PM2自动部署代码步骤流程总结
Dec 10 #Javascript
You might like
vBulletin HACK----显示话题大小和打开新窗口于论坛索引页
2006/10/09 PHP
Laravel Eloquent ORM 多条件查询的例子
2019/10/10 PHP
laravel 中某一字段自增、自减的例子
2019/10/11 PHP
PHP 使用位运算实现四则运算的代码
2021/03/09 PHP
javascript 避免闭包引发的问题
2009/03/17 Javascript
jquery向.ashx文件post中文乱码问题的解决方法
2011/03/28 Javascript
js判断设备是否为PC并调整图片大小
2014/02/12 Javascript
jQuery中append()方法用法实例
2015/01/08 Javascript
举例详解JavaScript中Promise的使用
2015/06/24 Javascript
javascript拖拽效果延伸学习
2016/04/04 Javascript
超实用的JavaScript代码段 附使用方法
2016/05/22 Javascript
js下拉菜单生成器dropMenu使用方法详解
2017/08/01 Javascript
如何使用vue slot创建一个模态框的实例代码
2020/05/24 Javascript
[00:34]TI7不朽珍藏III——纯金地穴编织者饰品展示
2017/07/15 DOTA
动态创建类实例代码
2009/10/07 Python
深入解析Python中的变量和赋值运算符
2015/10/12 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
如何安装并使用conda指令管理python环境
2019/07/10 Python
tensor和numpy的互相转换的实现示例
2019/08/02 Python
python 中的9个实用技巧,助你提高开发效率
2020/08/30 Python
Python爬虫之Selenium多窗口切换的实现
2020/12/04 Python
海淘母婴商城:国际妈咪
2016/07/23 全球购物
加拿大女装网上购物:Reitmans
2016/10/20 全球购物
德国Discount-Apotheke中文官网:DC德式康线上药房
2020/02/18 全球购物
如何在C# winform中异步调用web services
2015/09/21 面试题
What is EJB
2016/07/22 面试题
《最大的麦穗》教学反思
2014/04/17 职场文书
大专生找工作自荐书
2014/06/10 职场文书
销售团队获奖感言
2014/08/14 职场文书
2014年优质护理服务工作总结
2014/11/14 职场文书
师德师风学习材料
2014/12/19 职场文书
预备党员党支部意见
2015/06/02 职场文书
入党培养人考察意见
2015/06/08 职场文书
骆驼祥子读书笔记
2015/06/26 职场文书
社区志愿者服务心得体会
2016/01/22 职场文书
golang 如何用反射reflect操作结构体
2021/04/28 Golang