Obecnie pracuję nad aplikacją internetową za pomocą React, Maszynopis i WebPack. Chcę, aby pakiet WebPack generował obrazy adresów URL zgodnie z subdomeną, którą znam tylko w czasie wykonywania, a nie podczas kompilacji.Jak korzystać ze zmiennej "__webpack_public_path__" w mojej konfiguracji WebPack?
Czytałem to w dokumentacji WebPacks męska: http://webpack.github.io/docs/configuration.html#output-publicpath
Uwaga: W przypadku, gdy ewentualny publicPath z plików wyjściowych nie jest znany w czasie kompilacji, to może być pusta i ustawić na dynamicznie runtime w pliku punktu wejścia. Jeśli nie znasz nazwy PublicPath podczas kompilacji, możesz ją pominąć i ustawić webpack_public_path w swoim punkcie wejścia.
webpack_public_path = myRuntimePublicPath
// reszta wpisu aplikacji
ale nie mogę dostać pracy.
Ustawiłem zmienną "webpack_public_path" w punkcie wejścia mojej aplikacji. Ale w jaki sposób mogę użyć jego wartości w mojej konfiguracji webpacka. muszę go używać tutaj:
"moduł": { "zasady": [ { "test": /.(png|jpg|gif)(\?[\s\S] ? +) $ /, "ładowarki": [
url?limit=8192&name=/images/[hash].[ext]
] } ] }
muszę zrobić smething tak:
"ładowarki": [” url? limit = 8192 & name = __webpack_public_path__ /images/[hash].[ext] ']
ODPOWIEDŹ
udało mi się tego dokonać. Tak więc w moim pliku punktu wejścia (start.tsx) deklaruję de __webpack_public_path__
za darmo var przed importem i przypisuję jego wartość po imporcie.
/// <reference path="./definitions/definitions.d.ts" />
declare let __webpack_public_path__;
import './styles/main.scss';
/* tslint:disable:no-unused-variable */
import * as React from 'react';
/* tslint:enable:no-unused-variable */
import * as ReactDOM from 'react-dom';
import * as Redux from 'redux';
import { Root } from './components/root';
__webpack_public_path__ = `/xxxx/dist/`;
Teraz droga publiczna jest używany, gdy mam img
tag:
<img src={require('../../images/logo.png')} />
Okazuje się:
<img src='/xxxx/dist/images/125665qsd64134fqsf.png')} />
Dzięki za anwer. parametr 'name' istnieje, używamy go, ponieważ mieliśmy problemy z plikami generowanymi w niewłaściwym folderze. Udało mi się sprawić, żeby działało, zamierzam zaktualizować mój post z odpowiedzią. – Aiso
Cieszę się, że udało Ci się, jestem ciekawy, aby zobaczyć Twój zaktualizowany wpis. –
Czy istnieje różnica między ładowaniem zasobów a 'import' i' require'? – elQueFaltaba