当我在名为post1和post2的不同md文件中提供内容时,我希望将每个内容添加到名为Service的组件中.当我像下面描述的那样做时,我的组件页面上出现了一个错误,说标题未定义.如何自动添加这些内容?

我的页面文件:

---
import Layout from '../layouts/Layout.astro';
import { getCollection } from "astro:content";
const allPosts = await getCollection("posts");
import Service from "../components/Service.astro";
---

<Layout title="Serwis">
    <ul>
        {
             allPosts.map((post, index) => (
                <Service key={index} title={post.title} price={post.price} description={post.description}/>
            ))
          }
    </ul>
</Layout>

post1 md文件:

---
title: Konserwacja Klimatyzatora    
description: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas tincidunt, lacus sit amet ullamcorper feugiat, neque augue vulputate dui, vel condimentum justo nunc a ipsum.
price: Już od ...PLN
---

我的组成部分:

---
import Layout from '../layouts/Layout.astro';
---

<Layout title="Service">
    <div>
        <h2>{title}</h2>
        <p>{price}</p>
    </div>
    <p>{description}</p>
</Layout>

推荐答案

你的Service.astro组件应该看起来像这样:

---
import Layout from '../layouts/Layout.astro';

const { title, price, description } = Astro.props
---

<Layout title="Service">
    <div>
        <h2>{title}</h2>
        <p>{price}</p>
    </div>
    <p>{description}</p>
</Layout>

或者,不要有三个不同的props (标题,价格,描述),你可以只有一个(职位),并称之为<Service post={post} />.

Javascript相关问答推荐

foreach循环中的Typescript字符串索引

我的glb文件没有加载到我的three.js文件中

获取加载失败:获取[.]添加时try 将文档添加到Firerestore,Nuxt 3

将数据从strapi提取到next.js,但响应延迟API URL

如何访问Json返回的ASP.NET Core 6中的导航图像属性

如何避免移动设备中出现虚假调整大小事件?

如何在RTK上设置轮询,每24小时

Exceljs:我们在file.xlsx(...)&#中发现了一个问题'"" 39人;

React Code不在装载上渲染数据,但在渲染上工作

使搜索栏更改语言

如何禁用附加图标点击的v—自动完成事件

WhatsApp Cloud API上载问题:由于MIME类型不正确而导致接收&Quot;INVALID_REQUEST";错误

如何在ASP.NET项目中使用Google Chart API JavaScript将二次轴线值格式化为百分比

自定义确认组件未在vue.js的v菜单内打开

如何组合Multer上传?

是否可以在不更改组件标识的情况下换出Reaction组件定义(以维护状态/引用等)?如果是这样的话,是如何做到的呢?

P5.js中矩形内的圆弧

如果对象中的字段等于某个值,则从数组列表中删除对象

相对于具有选定类的不同SVG组放置自定义工具提示

在ReactJS上挂载组件时获得多个身份验证请求