2016-03-09 20 views
7

znajduje się następujące zadanie - Mam folder z widokiem:WebPACK config dla wielu punktów wejścia/szablonów

--views 
----view1 
------view1.js 
------view1.html(or jade) 
----view2 
------view2.js 
------view2.html(or jade) 

Więc muszę stworzyć prosty config dla WebPacka, który może tworzyć następujące dane wyjściowe 'publiczne' Folder:

--public 
----js 
------view1.js 
------view2.js 
----view1.html 
----view2.html 

rozumiem, że mogę korzystać z wielu punktów wejścia z nim:

entry: { 
    view1: './views/view1/view1' 
    view2: './views/view2/view2 
    } 

Rozumiem również, że mogę wstrzykiwać pakiet (public/js/view1.js) w public/view1.html przy pomocy HtmlWebpackPlugin. Ale co z wieloma punktami? Czy muszę dodać HtmlWebpackPlugin dla każdego widoku html? Z góry dziękuję!

+0

Mam dokładnie to samo pytanie, czy w końcu to rozwiązałeś? – leojh

Odpowiedz

8

Należy dodać wiele sekcji HtmlWebpackPlugin dla każdej strony .html, którą chcesz utworzyć.

Oto próbka mojego własnego config:

plugins: [ 
    new HtmlWebpackPlugin({ 
    title: 'SearchView', 
    chunks: ['manifest', 'vendor', 'searchView'], 
    template: `${PATHS.app}/index.ejs`, // Load a custom template 
    inject: 'body', // Inject all scripts into the body 
    filename: 'searchView.html' 
    }), 
    new HtmlWebpackPlugin({ 
    title: 'TicketView', 
    chunks: ['manifest', 'vendor', 'ticketView'], 
    template: `${PATHS.app}/index.ejs`, // Load a custom template 
    inject: 'body', // Inject all scripts into the body 
    filename: 'ticketView.html' 
    }) 
] 

Obiekt chunks jest kluczowa, ponieważ pozwala wybrać tylko zasoby potrzebne dla każdej strony.

+0

Mam podobny przypadek użycia. Mam aplikację na jedną stronę, w której chcę wyświetlać stronę rejestracji jako oddzielny pakiet. Mój problem został rozwiązany za pomocą powyższego rozwiązania, ale wciąż istnieje mały problem. Dla powyższego rozwiązania muszę zapisać adres URL jako "/signup.html", ale zamiast tego, jeśli tak jest, kiedy piszę "/ signup", ładuje się pakiet rejestracji, to byłoby bardzo pomocne. Z góry dziękuję. – monica

+0

Spowalnia to kompilację. –

Powiązane problemy