react-hot-loader的webpack输出文件到哪里去了?
Where do the webpack output files from the react-hot-loader go?
让我先说一下,我所设置的一切都是有效的,这只是一个困扰我的问题,我希望得到一个答案。我正在使用react-hot-boilerplate项目(https://github.com/gaearon/react-hot-boilerplate)。然而,在webpack.config.js
中,这个设置让我非常困惑:
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
publicPath: '/static/'
},
在这个配置中,看起来输出文件应该进入项目根目录下的dist
文件夹。即使我手动创建dist
文件夹(我知道我不应该这样做),也没有文件输出。然而,一切都很好;如果我更改了组件中的某些内容,应用程序将加载并热加载。这个输出文件实际到哪里去了?
react-hot-boilerplate的所有繁重工作(就热重新加载文件而言)都由webpack-dev-server依赖项完成。
webpack-dev-server反过来使用webpack-dev-middleware来处理文件的服务(来自express)。
这段关于Webpack Dev Server的文档应该能让你很好地了解这个机制是如何工作的:
使用这个配置webpack-dev-server将提供静态文件您的构建文件夹并监视源文件的更改。当做出更改后,bundle将被重新编译。修改后的包在publicPath中指定的相对路径从内存中服务(见API)。它不会被写到您配置的输出目录中。当一个bundle已经存在于同一个url路径中时内存优先。
例如,使用上面的配置,您的bundle将是可用的localhost: 8080/资产/bundle.js
这是来自webpack-dev-middleware文档的一个很好的片段:
webpack-dev-middleware是一个基于连接的小型中间件中间件堆栈。它使用webpack来编译内存中的资源为他们服务。当编译运行时,对所服务的每个请求在我们有一个稳定的bundle之前,Webpack资源会被阻塞。
因此,在开发服务器内部,文件被写入内存文件系统,然后提供服务。资产端点从内存位置提供文件,并创建一个web套接字连接来推送进一步的更改。
- gulp/webpack任务的输出文件名
- Webpack构建注释输出捆绑包
- 使用 webpack 在输出目录中保留文件夹结构
- 为什么使用 Webpack 和 Gulp 构建的输出包如此之大 (>1.9Mb)
- Webpack - 如何将依赖项捆绑到一个单独的文件中,该文件将包含在“常规”输出流中
- Webpack 会导致捆绑包输出中的语法错误
- Webpack 输出文件
- 分别设置输出文件夹和文件 url;带有 Django 的 Webpack 文件加载器
- webpack-dev中间件不会将输出编译到文件夹中
- Webpack-没有输出文件,没有报告错误
- 如何在webpack中配置字体文件输出目录
- 制作webpack's库输出与babel6兼容
- Webpack输出错误的图像路径
- 在webpack中,如何为多个入口点设置不同的输出目录?
- 拆分Webpack CommonsChunkPlugin输出到多个文件
- Webpack构建更少的文件输出一个CSS最小化文件
- Webpack不创建输出文件(不使用Webpack开发服务器)
- 为React配置webpack以使用多个条目和输出
- 可以webpack为浏览器和节点输出单独的脚本和模块文件
- react-hot-loader的webpack输出文件到哪里去了?