问题描述
webpack-cli 在项目中是如何使用的?
据我所知,只要我在 bash 终端上输入 npm run start,webpack 就会开始运行 webpack 配置文件,其中我编写了将 jsx
转换为 {{ 1}} 使用 babel,js
到 scss/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
专家,但我认为这会帮助您更好地理解它。