Próbowałem dowiedzieć się, jak dynamicznie dodawać obrazy za pośrednictwem React i Webpack. Mam folder obrazu pod src/images i komponent pod src/components/index. Używam url-ładowarka o następującej konfiguracji dla WebPackaDynamicznie Dodaj obrazy Reaguj Webpack
{
test: /\.(png|jpg|)$/,
loader: 'url-loader?limit=200000'
}
W ramach komponentu I wiem, że mogę dodać require (IMAGE_PATH) dla konkretnego obrazu w górnej części pliku przed utworzyć komponent ale Chcę, aby komponent był generyczny i musi mieć właściwość ze ścieżką dla obrazu przekazywanego z komponentu nadrzędnego.
Co Próbowałem to:
<img src={require(this.props.img)} />
Do faktycznej własności próbowałem prawie każdą ścieżkę mogę myśleć, aby obraz z korzenia projektu, od reagowania aplikacji root, i ze składnika samo.
System plików
|-- src
| ` app.js
| `--images
| ` image.jpg
| ` image.jpg
| `-- components
| `parent_component.js
| `child_component.js
Komponent rodzic jest w zasadzie tylko pojemnik do przechowywania wielokrotności dziecka więc ...
<ChildComponent img=data.img1 />
<ChildComponent img=data.img2 />
etc....
Czy istnieje jakiś sposób, w jaki to zrobić przy użyciu reagować i WebPack z url-loader lub czy po prostu idę na złą ścieżkę, aby podejść do tego?
Chcę wiedzieć, jak załadować ten obraz z i API, które zwraca obraz. –
Nie jestem pewien, czy zobowiązuję się: jeśli chcesz, aby przeglądarka użytkownika ładowała obraz z interfejsu API, nie ma to nic wspólnego z pakietem sieci Web. Po prostu użyj zmiennej (prawdopodobnie zdefiniowanej po wywołaniu interfejsu API) jako src
. Pomysł polegał na umieszczeniu obrazu w twoich źródłach i archiwum Webpack. (zobacz http://stackoverflow.com/questions/32612912/dynamically-add-images-react-webpack/35454832?noredirect=1#comment56021739_32613874) –
mlorber
Dzięki, to działa świetnie. Wspomniany artykuł wspomina również na końcu, jeśli używasz React, a następnie używasz babel-plugin-transform-react-jsx-img-import, aby automatycznie wygenerować import. w ten sposób możesz po prostu napisać:
–