webpack-dev-server API

webpack-dev-server は、Node.js ランタイムで直接使用できる Node.js API を提供します。

インストール

webpack-dev-server Node.js API の使用を開始するには、まず webpack および webpack-dev-server をまだインストールしていない場合はインストールしてください。

npm install --save-dev webpack webpack-dev-server

次に、Node.js スクリプトでモジュールを require します。

const Webpack = require('webpack');
const WebpackDevServer = require('webpack-dev-server');

開始

webpack-dev-server インスタンスにサーバーを起動するように指示します。

server.js

const Webpack = require('webpack');
const WebpackDevServer = require('webpack-dev-server');
const webpackConfig = require('./webpack.config.js');

const compiler = Webpack(webpackConfig);
const devServerOptions = { ...webpackConfig.devServer, open: true };
const server = new WebpackDevServer(devServerOptions, compiler);

const runServer = async () => {
  console.log('Starting server...');
  await server.start();
};

runServer();

次に、次のコマンドでサーバーを実行します。

node server.js

startCallback(callback)

webpack-dev-server インスタンスにサーバーを起動し、コールバック関数を実行するように指示します。

server.js

const Webpack = require('webpack');
const WebpackDevServer = require('webpack-dev-server');
const webpackConfig = require('./webpack.config.js');

const compiler = Webpack(webpackConfig);
const devServerOptions = { ...webpackConfig.devServer, open: true };
const server = new WebpackDevServer(devServerOptions, compiler);

server.startCallback(() => {
  console.log('Successfully started server on http://localhost:8080');
});

次に、次のコマンドでサーバーを実行します。

node server.js

停止

webpack-dev-server インスタンスにサーバーを停止するように指示します。

server.js

const Webpack = require('webpack');
const WebpackDevServer = require('webpack-dev-server');
const webpackConfig = require('./webpack.config.js');

const compiler = Webpack(webpackConfig);
const devServerOptions = { ...webpackConfig.devServer, open: true };
const server = new WebpackDevServer(devServerOptions, compiler);

const runServer = async () => {
  console.log('Starting server...');
  await server.start();
};

const stopServer = async () => {
  console.log('Stopping server...');
  await server.stop();
};

runServer();

setTimeout(stopServer, 5000);

次に、次のコマンドでサーバーを実行します。

node server.js

stopCallback(callback)

webpack-dev-server インスタンスにサーバーを停止し、コールバック関数を実行するように指示します。

server.js

const Webpack = require('webpack');
const WebpackDevServer = require('webpack-dev-server');
const webpackConfig = require('./webpack.config.js');

const compiler = Webpack(webpackConfig);
const devServerOptions = { ...webpackConfig.devServer, open: true };
const server = new WebpackDevServer(devServerOptions, compiler);

server.startCallback(() => {
  console.log('Successfully started server on http://localhost:8080');
});

const stopServer = () =>
  server.stopCallback(() => {
    console.log('Server stopped.');
  });

setTimeout(stopServer, 5000);

次に、次のコマンドでサーバーを実行します。

node server.js

internalIP(family: "v4" | "v6")

内部の IPv4/IPv6 アドレスを非同期的に返します。

server.js

const WebpackDevServer = require('webpack-dev-server');

const logInternalIPs = async () => {
  const localIPv4 = await WebpackDevServer.internalIP('v4');
  const localIPv6 = await WebpackDevServer.internalIP('v6');

  console.log('Local IPv4 address:', localIPv4);
  console.log('Local IPv6 address:', localIPv6);
};

logInternalIPs();

internalIPSync(family: "v4" | "v6")

内部の IPv4/IPv6 アドレスを同期的に返します。

server.js

const WebpackDevServer = require('webpack-dev-server');

const localIPv4 = WebpackDevServer.internalIPSync('v4');
const localIPv6 = WebpackDevServer.internalIPSync('v6');

console.log('Local IPv4 address:', localIPv4);
console.log('Local IPv6 address:', localIPv6);

1 貢献者

snitin315