MarkdownView

MarkdownView 使用 swift-markdown 作为解析器

Markdown Sample
Markdown Doxygen Document

import MarkdownView
import Markdown
import SwiftUI

struct MarkdownView: View {
  let markdown: String

  var contents: [MarkupContent] {
    let document = Document(
        parsing: markdown,
        options: [.parseBlockDirectives, .parseSymbolLinks, .parseMinimalDoxygen, .parseSymbolLinks]
    )
    return MarkdownViewParser.parse(document: document)
  }
  
  var body: some View {
    ScrollView {
      LazyVStack(alignment: .leading, spacing: 10) {
        ForEach(contents, id: \.self) { content in
          MarkupContentView(content: content)
        }
      }
    }
  }
}

添加 MarkdownView 作为依赖项

要在 SwiftPM 项目中使用 MarkdownView 插件,请将以下行添加到你的 Package.swift 文件中的依赖项中

.package(url: "https://github.com/zunda-pixel/MarkdownView", from: "0.4.0"),

为你的目标包含 "MarkdownView" 作为依赖项

.target(
  name: "<target>",
  dependencies: [
    .product(name: "MarkdownView", package: "MarkdownView"),
  ]
),