当前位置: 首页 > article >正文

vue3官方示例-简单的 markdown 编辑器。

官方示例不能直接粘贴使用,故自己补了些代码。方便初学者学习,节省时间,提高学习效率。

1、html代码:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>20-vue3- markdown 编辑器.html</title>
<!--    加载项,可以本地加载,也可网联加载(用ai提示生成网联代码)-->
    <script src="./dist/vue.global.js"></script>
    <script src="./lodash/lodash.js"></script>
    <script src="./marked/marked.min.js"></script>
    <script>
          // 动态标题
          var dynamicTitle = "20-vue3- markdown 编辑器.html".slice(0, -5);
          // 使用 JavaScript 修改 <title> 标签的内容
          document.title = dynamicTitle;
      </script>
</head>
<body>
    <div id="app">
        <h1>{{input}}</h1>
        <h1>{{output}}</h1>
<!--@keyup.enter="update" 在textarea的内容输入后,按enter按键触发 update方法-->
          <div class="editor">
            <textarea class="input" :value="input" @keyup.enter="update"></textarea>
            <div class="output" v-html="output"></div>
          </div>
    </div>
    <script type="module">
      const { createApp, ref,computed } = Vue
      // marked 把textarea的内容进行解析,并返回html格式。
      // 如:“# hello” 会被解析为“<h1>hello</h1>”
      const { parse} = marked
      // lodash的debounce函数,防抖函数,单位为毫秒,默认为1000毫秒即1秒
      // 如:如这例子中,在1秒内,输入了多次,最终只会执行一次。
      const {debounce} = _
      createApp({
        components:{

        },
        setup() {
            const input = ref('# hello')
            const output = computed(()=>{return parse(input.value)})
            const update = debounce((e) => {
              input.value = e.target.value
            }, 1000)

            return {
              input,
              output,
              update
            }
        }
      }).mount('#app')
    </script>

</body>
</html>

2、结果:

                ​​​​​​​        ​​​​​​​        ​​​​​​​


http://www.kler.cn/a/375494.html

相关文章:

  • webrtc agc2实现原理
  • 函数调用方法背后的原理
  • <HarmonyOS第一课>应用/元服务上架的课后习题
  • 无线基础配置
  • 如何批量裁剪图片?5个软件帮助你快速进行图片裁剪
  • Scrapy源码解析:DownloadHandlers设计与解析
  • Unity3D MMORPG游戏服务器之物理模拟系统详解
  • Python进阶 | Django框架数据库与Model之间的关系
  • 谷歌将差异隐私扩展到近 30 亿台设备
  • HTML 文档规范与解析模式:DOCTYPE、<html> 标签以及结构化页面
  • 指定用户开启自启vncserver
  • 深入探讨SEO分析技巧助力网站流量提升
  • linux基础-lvm逻辑卷组分区实操
  • MySql基础:事务
  • Python代码优雅解析PDF文件
  • 游戏和各大APP改IP地址方法教程
  • java控制台打印减法口诀
  • 【机器学习】22. 聚类cluster - K-means
  • python openai API token超限制
  • 测试Bug提交报告模板
  • Linux-期末考试试题8套(含答案)
  • JavaIO流操作
  • BGP路由优选+EVPN
  • npm入门教程6:npm脚本
  • PHP实现雪花算法生成唯一ID
  • 【银河麒麟高级服务器操作系统】虚拟机lvm分区丢失现象分析及解决建议