#html #css #reactjs #image
Вопрос:
Я прочитал несколько источников и даже попытался в значительной степени скопировать этот codesandbox, но, похоже, это мне совсем не помогло.
Структура файла
src
icon.gif
App.jsx
index.js
styles.css
компонент
export default function App() {
return (
<div className="App">
<img src="src/img/icon.gif" alt="icon" />
</div>
);
}
Комментарии:
1. Реакция не имеет никакого отношения к тому, отображается изображение или нет. Проверьте вкладку «Сеть», и я готов поспорить, что ваш URL неверен или ваше изображение находится не там, где вы думаете. Ваша файловая структура ничего нам не говорит, если мы не знаем, как обслуживаются файлы.
2. Если вы используете react-скрипты для запуска своего проекта, вам понадобится
public
папка, если вы хотите размещать изображения локально. Как и в связанном вами окне codesandbox, вам нужнаpublic
папка на верхнем уровне каталога вашего проекта со следующей структурой, чтобы ваше изображение работало:public/src/img/icon.gif
.3. @Deadron добавил мою ссылку на песочницу
4. @DennisG. добавлена моя ссылка на песочницу
Ответ №1:
Переместите свое изображение в общую папку и сошлитесь на него по пути /icon.gif
Чтобы ссылаться на изображение, изображение должно быть доступно напрямую по протоколу http. Вот для чего существует ваша общая папка, чтобы содержать эти ресурсы и делать их доступными. Ваша папка src должна содержать только исходные файлы, такие как JavaScript и в данном случае CSS.
Комментарии:
1. Потрясающе! Не понимаю, почему вы не сможете ссылаться на все, что вам нравится…
2. Вы можете ссылаться на все, до чего действительно можете дотянуться. На веб-странице это почти всегда означает ресурсы, доступные через http. Чтобы получить доступ к чему-либо через http, вам нужен http-сервер, чтобы сделать этот ресурс доступным вне вашей файловой системы. В используемой вами настройке он запускает веб-сервер, но затем обслуживает только результирующий файл/файлы пакета js, а также файлы в общей папке. Вы не можете получить доступ ни к чему другому, не изменив конфигурацию веб-сервера. Это проблема с использованием приложения react create. При его использовании существует много скрытых сложностей.