#image #next.js
Вопрос:
Я пытаюсь импортировать локальное изображение, сохраненное в общей папке в моем next.js проект. Конечная цель состоит в том, чтобы импортировать локальное изображение, сохранить это изображение внутри массива объектов, чтобы, наконец, отобразить массив и создать набор карточек. Я уже делал это таким образом раньше с React. Я использовал SVGOMG и преобразовал код очистки в jsx..
import Icon from "../public/assets/undraw_barbecue_3x93.svg";
const DUMMY_CHARACTERISTICS = [
{
id: "card1",
image: Icon,
title: "Insert text here",
description: "Insert text here",
},
const Characteristics = () => {
return (
<ul>
{DUMMY_CHARACTERISTICS.map((item) => (
<CharacteristicsCard
key={item.id}
id={item.id}
image={item.image}
title={item.title}
description={item.description}
/>
))}
</ul>
);
};
const CharacteristicsCard = (props) => {
return (
<li id={props.id}>
<Image src={props.image} width={150} height={150} />
<h1>{props.title}</h1>
<p>{props.description}</p>
</li>
);
};
Error Message: Can't resolve file path to image
Комментарии:
1. когда мы импортируем изображение, на самом деле мы импортируем объект изображения, который имеет множество свойств. Попробуйте значок входа в систему. Я точно не помню, но объект image содержит свойство src, в котором указан адрес изображения. Вместо значка это должен быть значок.src
2. Next.js поддерживает только статически импортированные изображения в следующих форматах:
.jpg
,.png
, или.webp
. Попробуйте вместо этого использовать строку пути для SVG, т. Е.image: "/assets/undraw_barbecue_3x93.svg"
.