Markdown组件 @luvi/lv-markdown-in 代码块复制操作指导 原创
头像 深海的鲸同学 luvi 2026-07-21 20:01:58    发布
4062 浏览 30 点赞 0 收藏

@luvi/lv-markdown-in 鸿蒙生态 Markdown 渲染解决方案。

因隐私政策调整,从 v3.1.0 版本开始,移除原有代码块的复制文本到剪贴板的能力,请通过 MarkdownController.setCodeCopyListener() 接口注册代码块复制监听,并自行调用 pasteboard 系统接口实现代码块的复制处理逻辑。

示例代码:

import { Markdown, MarkdownController } from '@luvi/lv-markdown-in';
import { pasteboard } from '@kit.BasicServicesKit';
import { promptAction } from '@kit.ArkUI';

@Entry
@ComponentV2
struct CopyTest {
  @Local controller: MarkdownController = new MarkdownController()
  @Local content: string = `
## 鸿蒙原生应用开发笔记
*鸿蒙原生*,意味着**纯净**与**性能**的平衡。
> 想让文字像在原生世界里呼吸,就得从渲染开始。

\`\`\`
Hello Harmony, Hello Markdown
\`\`\`
`

  aboutToAppear(): void {
    // 注册代码块点击复制监听
    this.controller
      .setCodeCopyListener((text) => {
        // Create clipboard content object
        const pasteboardData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, text);
        // Get system clipboard object
        const systemPasteboard = pasteboard.getSystemPasteboard();
        systemPasteboard.setData(pasteboardData) // Put data into clipboard
          .then(() => { // Read clipboard content
            promptAction.showToast({ message: 'copy success.' });
          })
      })
  }

  build() {
    Column() {
      Markdown({
        controller: this.controller,
        text: this.content
      })
    }
    .padding({
      left: 15,
      right: 15,
      top: 60,
    })
  }
}


©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
三方库

暂无评论数据

加载中...

发布

头像

深海的鲸同学 luvi

独立全栈开发者、鸿蒙生态内容创作者、鸿蒙原生应用“Segment”、“上述”、“NexServer”、“Markdown轻码实验室”作者、鸿蒙生态三方库lv-markdwon-in、html2md作者,优秀三方开源库作者。HarmonyOS应用开发者高级认证,HarmonyOS开发者社区优质问答博主。

22

帖子

0

提问

347

粉丝

关注
最新发布

【HarmonyOS】图像超分开发实践

2026-07-22 14:15:24    发布

ArkUI深色模式适配指南

2026-07-22 13:24:29    发布
热门推荐
地址:北京市朝阳区北三环东路三元桥曙光西里甲1号第三置业A座1508室 商务内容合作QQ:2291221 电话:13391790444或(010)62178877
版权所有:电脑商情信息服务集团 北京赢邦策略咨询有限责任公司
声明:本媒体部分图片、文章来源于网络,版权归原作者所有,我司致力于保护作者版权,如有侵权,请与我司联系删除

京ICP备:2022009079号-2

京公网安备:11010502051901号

ICP证:京B2-20230255