技能 编程开发 集成 Markstream Vue 3

集成 Markstream Vue 3

v20260928
markstream-vue
指导在Vue 3应用中集成markstream-vue,涵盖渲染模式(聊天、文档、极简)、代码渲染选项(pre、shiki、monaco)、流式状态管理、长消息虚拟化、作用域组件覆盖以及安全HTML和Mermaid渲染的安全注意事项。
获取技能
337 次下载
概览

Markstream Vue 3

Overview

Configure the Vue 3 renderer beyond generic installation: surface modes, streaming lifecycle, code rendering, long-message virtualization, and scoped overrides.

When to Use

Use for a plain Vue 3 application after the package has been selected. Use markstream-nuxt when SSR-specific Nuxt boundaries matter.

Workflow

Before changing dependencies or source files, inspect the existing package manager and project conventions, preview the intended edits, and obtain explicit user approval.

  1. Confirm Vue 3 and not Nuxt. Install only requested peers and import markstream-vue/index.css after resets.
  2. Start with content. Use mode="chat" for AI streams, docs for rich documents, and minimal for lightweight non-chat surfaces.
  3. Choose fenced-code rendering explicitly: pre without a peer, shiki with stream-markdown, or compatibility-named monaco backed by stream-diffs.
  4. For live chat use smooth streaming auto, no fade, and an optional cursor. On completion keep the same mode, set final, and disable pacing/cursor.
  5. Use nodes only for worker parsing or structural AST ownership.
  6. For long transcripts, keep an existing outer message virtualizer in charge. Use Markstream logical height rather than mounted DOM height.
  7. Use scoped component registration and preserve safe HTML and Mermaid strict mode.
  8. Validate the smallest build/typecheck plus one incremental stream and one long-message case.

Example

<script setup lang="ts">
import MarkdownRender from 'markstream-vue'
import 'markstream-vue/index.css'

defineProps<{ content: string; isDone: boolean }>()
</script>

<template>
  <MarkdownRender
    mode="chat"
    :content="content"
    :final="isDone"
    :fade="isDone"
    :typewriter="!isDone"
    :smooth-streaming="isDone ? false : 'auto'"
    html-policy="safe"
  />
</template>

Limitations

  • Optional peers add bundle and browser-runtime cost.
  • DOM-minimal mode disables wrapper-dependent features.
  • Virtualization integration requires stable content and measurement keys.

Security & Safety Notes

Review dependency changes. Never enable trusted HTML or loose Mermaid rendering for untrusted model output.

信息
Category 编程开发
Name markstream-vue
版本 v20260928
大小 2.79KB
更新时间 2026-09-28
语言