2017-01-23 19 views
10

Wiem, że większość ludzi ma przeciwny problem, ale naprawdę chcę wyłączyć funkcję automatycznego ponownego ładowania.Jak wyłączyć automatyczne ponowne ładowanie serwera WWW?

ten sposób uruchomić mój serwer:

webpack-dev-server --open --progress 

To jest mój serwer dev config:

devServer: { 
    contentBase: 'app', 
    port: 9005, 
    hot: false, 
    inline: false 
} 

Wersje:

"webpack": "1.14.0", 
"webpack-dev-middleware": "1.9.0", 
"webpack-dev-server": "^1.16.2", 
"webpack-hot-middleware": "2.13.2", 
"webpack-md5-hash": "0.0.5" 

Dzięki tej konfiguracji WebPACK dev serwer otwiera początkowa strona jako localhost:9005/webpack-dev-server/ z automatycznym ponownym załadowaniem (tryb iframe). Gdy ustawię inline na true, to otworzy się localhost:9005 i automatyczne ponowne ładowanie jest nadal włączone (tryb inline => websockets).

Czy istnieje sposób całkowitego wyłączenia automatycznego ponownego ładowania?

+0

Przestań używać webpack-dev-server i po prostu uruchom skrypty budujące w razie potrzeby? – ceejayoz

+1

Mogę, ale lubię moją obecną konfigurację oprócz tej jednej rzeczy. –

Odpowiedz

7

Jako obejście, wykluczyłem skrypty po stronie klienta pakietu internetowego z pakietu. Wydaje się, że to nie powoduje automatycznego przeładowania. Zrobiłem to, przekierowując ten skrypt do zerowego programu ładującego.

{test: /webpack-dev-server\\client/, loader: "null-loader"},

+0

Dla potomności: aby to zadziałało w webpack2 z webpack-dev-server 2.4.5, musiałem trochę to zmienić. Zainstalowałem https://github.com/webpack-contrib/null-loader i musiałem wykluczyć ścieżkę: '{test: path.resolve (__ dirname, 'node_modules/webpack-dev-server/client'), loader: "null-loader"} ' – spirulence

+0

^^ To jest świetne. Całkowicie rozwiązany problem. Czy możesz zaktualizować swoją odpowiedź, aby uwzględnić ten dodatkowy detal webpack2? – Ghazgkull

4

Skrypty klienckie WebPACK dodaje domyślnie do wiązki (od WebPack 2), ale można wyłączyć tych, dodając --no-inline do polecenia CLI.

+0

Próbowałem tego i to nie działało. Używam webpack 1.x, czy ta opcja jest dostępna tylko w pakiecie internetowym 2.x? Nie mogę go nigdzie znaleźć: https://webpack.github.io/docs/webpack-dev-server.html ani https://webpack.github.io/docs/configuration.html –

+1

Ah, w trybie iframe skrypt klienta jest zawsze zawarty. Istnieją dwa sposoby, aby to naprawić; 1) Usuń '--open' i ręcznie przejdź do http: // localhost: 9005/ 2) Dodaj' --lazy', a następnie przekompiluje się tylko po odświeżeniu strony – spacek33z

+0

Zgadzam się, to nie działa w 2 .o albo – mwilcox

0

Nie znaleziono również oczywistego rozwiązania (wersja dla serwera sieci Web 1.16.5).

Częściowym rozwiązaniem wydaje się być:

webpack-dev-server --watch-poll 99999999999 

To nie odbuduje automatycznie. Ale nadal będzie ponownie ładować okna przeglądarki po początkowej kompilacji.

Powiązane problemy