Почему мои изображения не могут быть успешно загружены в React?

Я пытался добавить несколько изображений на страницу, но после рендеринга выяснилось, что изображения сломаны. Может ли кто-нибудь помочь мне понять, в чем проблема?

Вот мои исходные коды:

import React from 'react';
import Product from "./Product/index";
import Data from "../../../data/data.json";

const ProductList = () => {
    const renderedList = Data.goods.map(product => {
        return <Product product = {product} key = {product.name} />
    }
);   

    return (
        <div>{renderedList}</div>
    );
}

export default ProductList;

////////////////////////////////////////////////// ////////////////////////////////////////////////// //////////////////////////////////////////////////

import React, { Component } from "react";
import Thumb from "../../../Thumb/index";

const Product = props => {
        return (
            <div className = "shelf-item">
                <div className = "shelf-stopper">Free shipping</div>
                <Thumb 
                    classes = "shelf-item__thumb"
                    src = {props.product}
                />
                <p className = "shelf-item__title">product</p>
                <div className = "shelf-item__price">
                    productInstallment  
                </div>
                <div className = "shelf-item__buy-btn">Add to cart</div>
            </div>
        );
    }

export default Product;

////////////////////////////////////////////////// ////////////////////////////////////////////////// //////////////////////////////////////////////////

import React from 'react';

const Thumb = (props) => {
    return (
        <div className = {props.classes}>
            <img 
            src = {`/Users/xlz/Desktop/codingProject/react/new- 
                  shopping-cart/src/static/products/${props.src.pictures}`} 
            alt = {props.src.name} />
        </div>
    )
}

export default Thumb;

Это иерархия моих папок:

new-shopping-cart
  src
      components
        Thumb
          index.js

      static
        products
          xxxxxxxxxxxx.jpg
          xxxxxxxxxxxx.jpg
          xxxxxxxxxxxx.jpg

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

Если на странице отображаются неработающие изображения, URL-адреса не работают. Посмотрите на отображаемый HTML и посмотрите, что находится внутри атрибута src. Я бы ожидал что-то вроде http:///Users/xlz....

Sulthan 20.01.2019 19:47

Спасибо за ваш комментарий. Я проверил атрибут src и обнаружил, что при наведении мыши на src он показывал http://local:3000/Users/xlz/Desktop......... Есть ли проблема с этим путем?

Aurora 20.01.2019 19:54
local:3000 — это корень вашего сервера, а не корень вашей файловой системы. Ваш URL-адрес, вероятно, должен быть чем-то вроде /static/products/..., чтобы результат был `местный: 3000/статические/продукты`. Убедитесь, что ваши изображения скопированы в папку вашего дистрибутива.
Sulthan 20.01.2019 20:07

Я изменил свой URL-адрес на ../../static/products/${props.src.pictures}, и в результате получился http://localhost:3000/static/products/xxxxxxxxx.jpg, но это все равно не сработало. Я добавил иерархию своих папок в свой исходный вопрос, я думал, что проблем нет.

Aurora 20.01.2019 20:22

изменить место назначения изображения. означает, что вам нужно перенести свои изображения в ваш проект, внутри каталога вашего сервера

Vladyslav Tereshyn 20.01.2019 21:16

Мне жаль, что я не уловил вашу мысль. Что означает server directory?

Aurora 20.01.2019 21:20
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
6
45
0

Другие вопросы по теме