首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在AstroJS中显示获取的帖子

无法在AstroJS中显示获取的帖子
EN

Stack Overflow用户
提问于 2022-12-01 21:31:58
回答 1查看 32关注 0票数 0

我试图在AstroJS中构建我的网站,我无法显示我在“砖石”组件中获取的内容,该组件在我的浏览器中被呈现为一个空的"div“。

代码语言:javascript
复制
---
import BaseLayout from "../layouts/BaseLayout.astro";
import Masonry from "../components/Masonry.astro";
import ProjectThumbnail from "../components/ProjectThumbnail.astro";
const projects = await Astro.glob('./projects/*.md');
---
{console.log(projects.length)}
<BaseLayout title="overview">
    <Masonry title="grid">
        {projects.map(
            (project)=>{
                console.log(project);
                <ProjectThumbnail title={project.frontmatter.title} w_cols={project.frontmatter.width_cols} h_cols={project.frontmatter.height_cols} />
            }
        )}
    </Masonry>
</BaseLayout>

正如您所看到的,有两个控制台日志:

  • 第一个输出"2“,因为./projects目录中有两个.md文件
  • 第二个方案是:

代码语言:javascript
复制
{
  frontmatter: [Getter],
  file: [Getter],
  url: [Getter],
  rawContent: [Getter],
  compiledContent: [Getter],
  getHeadings: [Getter],
  getHeaders: [Getter],
  Content: [Getter],
  default: [AsyncFunction: Content] { [Symbol(astro.needsHeadRendering)]: false },
  [Symbol(Symbol.toStringTag)]: 'Module'
}
{
  frontmatter: [Getter],
  file: [Getter],
  url: [Getter],
  rawContent: [Getter],
  compiledContent: [Getter],
  getHeadings: [Getter],
  getHeaders: [Getter],
  Content: [Getter],
  default: [AsyncFunction: Content] { [Symbol(astro.needsHeadRendering)]: false },
  [Symbol(Symbol.toStringTag)]: 'Module'
}

我的.md文件名为project-sample.md和project-sam-two.md,它们的内容如下(根据文件更改标题):

代码语言:javascript
复制
---
title: 'Project sample'
layout: '../../layouts/Project.astro'
thumbnail: '/project-sample-img.jpg'
excerpt: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.'
height_cols: '1'
width_cols: '2'
---

Dolor sit amet Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

当我以个人身份打开帖子时,我会访问localhost:3001/projects/projects,它们都会显示它们的内容。

我希望你能帮助我,告诉我我在这里缺少的是什么。诚挚的问候!

ps:我正在遵循阿童木博士的这个参考

EN

回答 1

Stack Overflow用户

发布于 2022-12-02 14:13:14

改变这个问题是为了解决这个问题:

代码语言:javascript
复制
            (project)=>{
                console.log(project);
                <ProjectThumbnail title={project.frontmatter.title} w_cols={project.frontmatter.width_cols} h_cols={project.frontmatter.height_cols} />
            }

对此:

代码语言:javascript
复制
            (project)=>(
            <ProjectThumbnail title={project.frontmatter.title} w_cols={project.frontmatter.width_cols} h_cols={project.frontmatter.height_cols} />
        )
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74648396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档