有什么方法可以从 Webpack 生成 <link>'ed 而不是内联样式表?

Any way to generate <link>'ed instead of inline stylesheets from Webpack?

如果我在带有 css-loaderstyle-loader 插件的 webpack 项目中有以下代码:

import 'index.css'

它在 <style> 标签中生成内联样式。有没有办法通过让它生成 <link rel="stylesheet" href="index.css"> 来利用浏览器缓存功能?我知道我可以将 CSS 文件放在 public 文件夹中,但它不会在 Webpack 构建管道中。是否有一些现有的 CSS 加载程序插件可以执行此操作?或者是否有强烈的理由完全放弃这种方法(ofc。不要将它们渲染阻塞在文档中<head>)?

没有人反对这一点。我什至会说这比将 css 留在块中更常见。但是你需要为此使用一个插件。

直到最近,去这里的次数是 extract-text-webpack-plugin, but now if you are using webpack 4 I would suggest mini-css-extract-plugin

您可能希望为本地开发关闭此功能。它妨碍了 HMR。