You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
975 B
39 lines
975 B
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Vue.js markdown editor example</title>
|
|
<link rel="stylesheet" href="style.css">
|
|
<script src="https://unpkg.com/marked@0.3.6"></script>
|
|
<script src="https://unpkg.com/lodash@4.16.0"></script>
|
|
<!-- Delete ".min" for console warnings in development -->
|
|
<script src="../../dist/vue.min.js"></script>
|
|
</head>
|
|
<body>
|
|
|
|
<div id="editor">
|
|
<textarea :value="input" @input="update"></textarea>
|
|
<div v-html="compiledMarkdown"></div>
|
|
</div>
|
|
|
|
<script>
|
|
new Vue({
|
|
el: '#editor',
|
|
data: {
|
|
input: '# hello'
|
|
},
|
|
computed: {
|
|
compiledMarkdown: function () {
|
|
return marked(this.input, { sanitize: true })
|
|
}
|
|
},
|
|
methods: {
|
|
update: _.debounce(function (e) {
|
|
this.input = e.target.value
|
|
}, 300)
|
|
}
|
|
})
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|
|
|