MDAN MDAN Docs
官网

Elements 组件

@mdanai/sdk/elements 提供 MDAN 的官方默认 UI,底层使用 Web Components。

它现在直接建立在浏览器运行时提供的初始状态之上,而不再只是给服务端输出的原始 HTML 套一层样式。

如果你不想自己接管 UI,这一层就是浏览器侧最直接的默认方案。

推荐主线是 mountMdanElements({ root, host, ... })。registerMdanElements() 只是更底层的注册器,通常只会在测试或特殊自定义接入里单独使用。

基本用法

import { mountMdanElements } from "@mdanai/sdk/elements";
import { createHeadlessHost } from "@mdanai/sdk/web";
const host = createHeadlessHost({ root: document, fetchImpl: window.fetch });
mountMdanElements({
  root: document,
  host
}).mount();

如果你想接第三方 Markdown 渲染器,也可以把同一个渲染器注入进来:

mountMdanElements({
  root: document,
  host,
  markdownRenderer: {
    render(markdown) {
      return marked.parse(markdown);
    }
  }
}).mount();

如果你只想注册这些自定义元素,也仍然可以单独调用 registerMdanElements()。

默认会注册这些自定义元素:

这个包适合什么场景

如果你只想要浏览器运行时,并计划自己渲染 UI,就使用 @mdanai/sdk/web 而不接 @mdanai/sdk/elements。