webpack cli 什么时候开始使用

问题描述

webpack-cli 在项目中是如何使用的?

据我所知,只要我在 bash 终端上输入 npm run start,webpack 就会开始运行 webpack 配置文件,其中我编写了将 jsx 转换为 {{ 1}} 使用 babel,jsscss/less(如果我错了,请纠正我)。 但是,css 在这一切中发挥什么作用?

解决方法

<?php if (!isset($_SESSION['user']['username'])) { header('location: login/'); } ?> 包负责通过它为其创建的 webpack-dev-server 服务器提供构建服务。如果您对源代码进行任何更改(使用 http 重新加载选项时),它也会重新启动。

另一方面,hot 包负责源文件的构建和捆绑。因此,webpack-cli 必须运行 webpack-dev-server

所以你必须安装这两个软件包。

你可以在这里看到它是如何做到的:

https://github.com/webpack/webpack-dev-server/blob/master/bin/webpack-dev-server.js

webpack-cli

/** @type {CliOption} */ const cli = { name: 'webpack-cli',package: 'webpack-cli',binName: 'webpack-cli',installed: isInstalled('webpack-cli'),url: 'https://github.com/webpack/webpack-cli',preprocess() { process.argv.splice(2,'serve'); },}; // ... const runCli = (cli) => { if (cli.preprocess) { cli.preprocess(); } const path = require('path'); const pkgPath = require.resolve(`${cli.package}/package.json`); // eslint-disable-next-line import/no-dynamic-require const pkg = require(pkgPath); // eslint-disable-next-line import/no-dynamic-require require(path.resolve(path.dirname(pkgPath),pkg.bin[cli.binName])); }; // ... runCommand(packageManager,installOptions.concat(cli.package)) .then(() => { runCli(cli); }) .catch((error) => { console.error(error); process.exitCode = 1; }); v5 中,由于您使用 webpack(即 webpack server 调用)来启动服务,该服务将调用 webpack-cli包。

无论如何我都不是 webpack-dev-server 专家,但我认为这会帮助您更好地理解它。