如何从 markdown 文件中获取 javascript 中的 post 内容

How to get post content in javascript from markdown file

我正在使用 sveltekit 和 markdown 构建一个博客站点。我使用动态导入导入 .md 文件,但我只能访问元数据,而不能访问用 markdown 编写的 post 内容。 请帮助

//[slug.js]
export async function get({ params }) {
    const post = await import(`../../posts/${params.slug}.md`)
    console.log(post.default)
    console.log(post.metadata)

    return {
        body: {
            postContent: post.default,
            meta: post.metadata
        }
    }
}

//[slug.svelte]
<script>
    export let postContent, meta
    const { title, date, thumbnail } = meta
</script>

<h1>{title}</h1>
<p>{date}</p>
<img src={thumbnail} alt={title} />
<p>{postContent}</p>

使用 post.metadata 我可以获得 post 标题、日期和缩略图,但是 post.default returns 这个:

{ render: [Function: render], '$$render': [Function: $$render] }

如何获取 post 内容?

解决方案是在端点 [slug].js 上使用 post.default 并在 [slug].svelte 文件上使用

以下是解决方案的文件:

//[slug].js
export async function get({ params }) {
    const post = await import(`../../posts/${params.slug}.md`)

    return {
        body: {
            postContent: post.default,
            meta: post.metadata
        }
    }
}
//[slug].svelte
<script>
    export let postContent, meta
    const { title, date, thumbnail } = meta
</script>

<h1>{title}</h1>
<p>{date}</p>
<img src={thumbnail} alt={title} />

<svelte:component this={postContent} />