2017-03-03 14 views
10

Problem w obliczu jest związany z tagiem img. Kiedy jeden jest zaniepokojony, Poniższy kod ładuje obraz:Wyświetlanie obrazów w React przy użyciu JSX bez importowania

import image1 from './images/image1.jpg; 
<img src={image1} /> 

Ale poniżej kod nie obciążenie:

<img src={'./images/image1.jpg'}/> 
      or 
    <img src='./images/image1.jpg'/> 

muszę pętli json, coś jak [img { ' ":" ./ images/image1.jpg ',' name ':' AAA '}, {' img ':' ./ images/image2.jpg ',' name ':' BBB '}] i wyświetlaj każdy z nich jako obraz z nazwą jako stopką. Pętla jest w porządku, ale obrazy nie ładują się. Nie jest możliwe zaimportowanie wszystkich zdjęć do dodania. Nie używam niczego innego niż JSX od teraz. Proszę o przysługę.

+0

W zakładce przeglądarki sieciowej, co to _think_ adresy URL obrazów są? –

Odpowiedz

15

Trzeba wymagać plik tak:

<img src={ require('./images/image1.jpg') } /> 
+0

eslint narzeka na to, mówiąc: "Niespodziewane wymagania(). (Global-require)" Również mówi "Połączenia z require() powinny używać literałów łańcuchowych (import/no-dynamic-require)" – pixelwiz

+0

@pixelwiz Jeśli to ustawienie zostało włączone zamień "z cofnięciami". – Win

+0

Musiałem stworzyć oddzielny plik, który importuje wszystkie obrazy, a następnie mógłbym zaimportować ten plik i odwołać się do obrazów. Wygląda trochę szalenie, ale teraz React, Webpack i ESLint wydają się być szczęśliwe. – pixelwiz

1

require służy do statycznych „importu”, więc po prostu trzeba zmienić imports.

Przykład:

var imageName = require('./images/image1.jpg') 
<img src={imageName} /> 
+0

serdecznie zapraszamy :) Możesz zaakceptować moją odpowiedź jako rozwiązanie problemu, więc pomaga stackoverflow społeczności – Robsonsjre

+0

Próbowałem. Ale dostaję powiadomienie jak mogę zaakceptować po 4 minutach obecnie. – Gayathri

+0

Masz rację! to naprawdę ma "czas oczekiwania" .. haha – Robsonsjre

Powiązane problemy