Appearance
实现 Markdown预览 工具
分类:developer | 标签:Markdown、预览、编辑 实时预览 Markdown
2.1 功能说明
实时预览 Markdown
2.1.1 使用指南
功能说明
左侧编辑 Markdown,右侧实时预览渲染效果,可导出 HTML。
使用场景
写 README、技术博客、文档草稿。
2.2 代码实现
2.2.1 组件结构
本工具是一个基于 Vue 3 <script setup> 语法的单文件组件(SFC),统一包裹在 ToolPageShell 组件内,由它提供页面标题、工具 ID、分类与「使用指南」插槽等通用外壳;核心业务逻辑(响应式状态、计算属性、事件处理函数)全部写在 <script setup> 中,输入/输出通过 el-input、el-button 等 Element Plus 组件与用户交互,所有数据均在浏览器本地处理,不会上传服务器。
2.2.2 核心逻辑概览
<script setup> 中定义的主要函数/方法:
copyHtml()clear()
2.2.3 关键实现代码
以下是该工具的完整 <script setup> 实现(核心代码)。模板(<template>)与样式(<style>)已省略。
vue
import { ref, computed } from 'vue'
import { marked } from 'marked'
import ToolPageShell from '@/components/ToolPageShell.vue'
const md = ref('# 示例\n\n- 列表项一\n- 列表项二\n\n```js\nconsole.log("hi")\n```')
const html = computed(() => marked.parse(md.value))
function copyHtml() { navigator.clipboard?.writeText(html.value) }
function clear() { md.value = '' }2.3 效果截图
