feat(v2): add CLI option for polling (#2630)

* Add CLI option to polling

Some environments (specifically docker containers) can have issues with file watching for live reloads. [Webpack Dev Server provides a polling alternative](https://webpack.js.org/configuration/watch/#watchoptionspoll) option for this

* Update docusaurus.js

* Update cli.md

Co-authored-by: Yangshun Tay <tay.yang.shun@gmail.com>
This commit is contained in:
Tom Brien 2020-04-20 03:49:43 +01:00 committed by GitHub
parent 2823d73e19
commit 852b5e8f13
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 9 additions and 1 deletions

View file

@ -60,6 +60,7 @@ export interface StartCLIOptions {
host: string;
hotOnly: boolean;
open: boolean;
poll: boolean;
}
export interface BuildCLIOptions {

View file

@ -85,12 +85,17 @@ cli
'Do not fallback to page refresh if hot reload fails (default: false)',
)
.option('--no-open', 'Do not open page in the browser (default: false)')
.action((siteDir = '.', {port, host, hotOnly, open}) => {
.option(
'--poll',
'Use polling rather than watching for reload (default: false)',
)
.action((siteDir = '.', {port, host, hotOnly, open, poll}) => {
wrapCommand(start)(path.resolve(siteDir), {
port,
host,
hotOnly,
open,
poll,
});
});

View file

@ -141,6 +141,7 @@ export async function start(
publicPath: baseUrl,
watchOptions: {
ignored: /node_modules/,
poll: cliOptions.poll,
},
historyApiFallback: {
rewrites: [{from: /\/*/, to: baseUrl}],

View file

@ -48,6 +48,7 @@ Builds and serves a preview of your site locally with [Webpack Dev Server](https
| `--host` | `localhost` | Specify a host to use. E.g., if you want your server to be accessible externally, you can use `--host 0.0.0.0` |
| `--hot-only` | `false` | Enables Hot Module Replacement without page refresh as fallback in case of build failures. More information [here](https://webpack.js.org/configuration/dev-server/#devserverhotonly). |
| `--no-open` | `false` | Do not open automatically the page in the browser. |
| `--poll` | `false` | Use polling of files rather than watching for live reload as a fallback in environments where watching doesn't work. More information [here](https://webpack.js.org/configuration/watch/#watchoptionspoll). |
:::important