Astro не запускается, если появляется ошибка «Необходимо импортировать локальные изображения», и я не могу найти причинуJavascript

Форум по Javascript
Ответить
Anonymous
 Astro не запускается, если появляется ошибка «Необходимо импортировать локальные изображения», и я не могу найти причину

Сообщение Anonymous »

Я веду блог и в настоящее время добавляю поддержку миниатюр изображений в свои сообщения в блоге, но Astro продолжает говорить мне: «Необходимо импортировать локальные изображения». Теперь он вообще не загружает миниатюры изображений моего сайта для сообщений.
Изображение ошибки
Я выполнил каждый шаг в документации:

Объявил связанное изображение для записи коллекции контента.

Использовал помощник изображения для схемы коллекций контента, которая позволяет проверять и импортировать изображение.
И он продолжает выдавать мне это ошибка:

Необходимо импортировать локальные изображения.
Параметр src изображений и getImage должен быть импортированным изображением или URL-адресом, он не может быть строковым путем к файлу. Получено ./images/chini.jpg.
См. Справочник по документации.
Если вы хотите использовать изображение из папки src, вам необходимо либо импортировать его, либо, если изображение получено из коллекции контента, использовать помощник схемы image(). См. https://docs.astro.build/en/guides/images/#src-required для получения дополнительной информации о свойстве src.

Я выполнил шаги, потому что хочу использовать изображения из моей коллекции содержимого папки src, поэтому я использовал помощник схемы, как вы увидите сейчас в моем файле config.ts:

Код: Выделить всё

import { defineCollection, z } from "astro:content";

const postsCollection = defineCollection({
schema: ({ image }) => z.object({
author: z.string(),
date: z.string(),
image: image(),
title: z.string(),
}),
});

export const collection = {
posts: postsCollection,
};
Вот файл md для примера публикации:

Код: Выделить всё

author: andre-vitor
categories: ["first post"]
date: 10/01/2026
featured: false
image: "./images/chini.jpg"
title: Hello
---

oie esse é meu primeiro post de blog Muito Bacana e Supimpa
Eu não sei o atalho pra fazer lorem ipsum e enxer linguiça
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK

## Introdução

eu sou o dré haha
Вот компонент публикации:

Код: Выделить всё

import { type CollectionEntry } from "astro:content";
import { Image } from "astro:assets";

type Props = {
post: CollectionEntry;
};

const { post } = Astro.props;
console.log(post.data.image)

[url={`/blog/${post.slug}`}]

[/url]
[url={`/blog/${post.slug}`}
class=]
{post.data.title}
[/url]

{post.body}


Согласно документации, все должно работать нормально, но я застрял, пытаясь найти решение выдаваемой мне ошибки.

Подробнее здесь: https://stackoverflow.com/questions/798 ... d-i-cant-f
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»