• 10分钟写一个markdown编辑器


    marked.js

    Marked是一个Markdown解析引擎。

    vue.js

    Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。

    Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>Document</title>
    	<style type="text/css">
    		html, body, #editor {
    		  margin: 0;
    		  height: 100%;
    		  font-family: 'Helvetica Neue', Arial, sans-serif;
    		  color: #333;
    		}
    
    		textarea, #editor div {
    		  display: inline-block;
    		   49%;
    		  height: 100%;
    		  vertical-align: top;
    		  box-sizing: border-box;
    		  padding: 0 20px;
    		}
    
    		textarea {
    		  border: none;
    		  border-right: 1px solid #ccc;
    		  resize: none;
    		  outline: none;
    		  background-color: #f6f6f6;
    		  font-size: 14px;
    		  font-family: 'Monaco', courier, monospace;
    		  padding: 20px;
    		}
    
    		code {
    		  color: #f66;
    		}
    
    	</style>
    </head>
    <body>
    	<div id="editor">
    	  <textarea :value="input" @input="update"></textarea>
    	  <div v-html="compiledMarkdown"></div>
    	</div>
    
    	<script type="text/javascript" src="marked.js"></script>
    	<script type="text/javascript" src="vue.js"></script>
    	<script type="text/javascript">
    		new Vue({
    		  el: '#editor',
    		  data: {
    		    input: '# hello'
    		  },
    		  computed: {
    		    compiledMarkdown: function () {
    		      return marked(this.input, { sanitize: true })
    		    }
    		  },
    		  methods: {
    		    update: function(e) {
    		    	this.input = e.target.value;
    		    }
    		  }
    		})
    
    	</script>
    	
    </body>
    </html>
    
    
  • 相关阅读:
    js 设计模式
    jquery 概述
    Node.js最新Web技术栈(2015年5月)
    this
    gulp
    bootstrap modal
    jsTree问题
    iterm2 学习笔记
    knowledge_map 修改笔记
    handsontable 问题
  • 原文地址:https://www.cnblogs.com/bhaltair/p/6131514.html
Copyright © 2020-2023  润新知