实现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 相关文章推荐
javascript中的107个基础知识收集整理 推荐
Mar 29 Javascript
Jquery结合HTML5实现文件上传
Jun 25 Javascript
js实现跨域访问的三种方法
Dec 09 Javascript
js获取html的span标签的值方法(超简单)
Jul 26 Javascript
JavaScript的事件机制详解
Jan 17 Javascript
node实现简单的反向代理服务器
Jul 26 Javascript
layui框架中layer父子页面交互的方法分析
Nov 15 Javascript
JavaScript程序设计高级算法之动态规划实例分析
Nov 24 Javascript
JS的Ajax与后端交互数据的实例
Aug 08 Javascript
js中Array对象的常用遍历方法详解
Jan 17 Javascript
Vue 解决路由过渡动画抖动问题(实例详解)
Jan 05 Javascript
vue-cli3.0修改打包后的文件名和文件地址,打包后本地运行报错解决
Apr 06 Vue.js
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
php download.php实现代码 跳转到下载文件(response.redirect)
2009/08/26 PHP
PHP Memcached + APC + 文件缓存封装实现代码
2010/03/11 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
2014/01/14 PHP
php求两个目录的相对路径示例(php获取相对路径)
2014/03/27 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
2015/12/21 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
php实现二叉树中和为某一值的路径方法
2018/10/14 PHP
PhpStorm连接服务器并实现自动上传功能
2020/12/09 PHP
下载网站打开页面后间隔多少时间才显示下载链接地址的代码
2010/04/25 Javascript
Jquery数字上下滚动动态切换插件
2015/08/08 Javascript
JS+CSS实现带小三角指引的滑动门效果
2015/09/22 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【二】
2016/05/10 Javascript
浅谈Javascript中的12种DOM节点类型
2016/08/19 Javascript
js制作网站首页图片轮播特效代码
2016/08/30 Javascript
jQuery给指定的table动态添加删除行的操作方法
2016/10/12 Javascript
解析js如何获取css样式
2016/12/11 Javascript
原生JavaScript实现弹幕组件的示例代码
2020/10/12 Javascript
微信小程序视频弹幕发送功能的实现
2020/12/28 Javascript
前端如何实现动画过渡效果
2021/02/05 Javascript
Python手机号码归属地查询代码
2016/05/04 Python
Python+django实现简单的文件上传
2016/08/17 Python
python中yaml配置文件模块的使用详解
2018/04/27 Python
Python字典的核心底层原理讲解
2019/01/24 Python
Keras设置以及获取权重的实现
2020/06/19 Python
Python爬取酷狗MP3音频的步骤
2021/02/26 Python
Stefania Mode英国:奢华设计师和时尚服装
2017/10/23 全球购物
大学新生欢迎词
2014/01/10 职场文书
护理工作感言
2014/01/16 职场文书
中秋节国旗下演讲稿
2014/09/05 职场文书
党员先进性教育整改措施
2014/09/18 职场文书
三严三实民主生活会发言稿
2014/10/13 职场文书
关于迟到的检讨书
2015/05/06 职场文书
《圆明园的毁灭》教学反思
2016/02/16 职场文书
初中政治教学反思
2016/02/23 职场文书
MySQL系列之四 SQL语法
2021/07/02 MySQL
Docker官方工具docker-registry案例演示
2022/04/13 Servers