如何使用 webpack 将 html、js 和 css 捆绑在一个 html 文件中? [关闭]

Posted

技术标签:

【中文标题】如何使用 webpack 将 html、js 和 css 捆绑在一个 html 文件中? [关闭]【英文标题】:How to bundle html, js and css in one html file with webpack? [closed] 【发布时间】:2018-04-02 15:16:11 【问题描述】:

我使用 webpack 构建了我的应用程序,将所有 css 合并到一个文件中,将所有 js 合并到一个文件中,并为我的 SPA 应用程序提供一个 html

当我使用webpagetest 进行测试时,我的大部分问题不是加载文件,而是将它们作为单个文件加载。

html+css+js=index.html

我如何将我的 html、css 和 js 打包到一个 index.html 中,以便我可以避免 http 开销

Webpack 或任何 webpack 插件更好,因为我们已经在使用它了。

感谢您对此的任何指导。

【问题讨论】:

【参考方案1】:

我使用html-webpack-plugin 将 Webpack 的输出注入到 index.html 文件中。

假设您的意思是将所有这些文件内联到 index.html 的一个 http 请求中,您可以使用 html-webpack-inline-source-plugin 来实现此目的。

【讨论】:

这似乎是一个解决方案,将尝试一下。 点赞!新手问题,为什么我需要在webpack中添加html,我以为我们只关心css和js优化以减少网络请求 @PirateApp html-webpack-plugin 的作用远不止减少加载 .js.css 的条目 index.html 文件的大小。在评论中涵盖的内容太多了。但它的基本用途是帮助更新 .html 文件,如果你对输出进行哈希处理,例如 main.1s8h3.css。当您更改源 css 时,这往往会在每个 webpack 构建中发生变化。它还支持 html 模板语言并拥有大量插件 github.com/jantimon/html-webpack-plugin#plugins 注意:要让它在 Webpack 4 中工作,你需要采取额外的步骤:github.com/DustinJackson/html-webpack-inline-source-plugin/… 该包表示不再维护,Facebook 提供了类似的插件。我没有找到任何人谈论这个插件。【参考方案2】:

无耻插件来袭

我发现 webpack 太重了,尤其是当我已经使用 browserify 来内联我的 require() 时。所以我用 JS 的string.replace 写了一个~30 行的 npm cli 包: https://www.npmjs.com/package/inline-scripts。 用法,$ inline-scripts src/index.html out/index.html

【讨论】:

您好,请问您的代码为什么不开源? 是,github.com/mahhov/inline-scripts,我只是没有在npm package.json中链接git repo

以上是关于如何使用 webpack 将 html、js 和 css 捆绑在一个 html 文件中? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在一个简单的html页面中使用webpack生成的js库

如何使用 webpack 在 index.html 中包含第三方库,如 jquery 和 bootstrap-table?

如何将WordPress集成到Webpack中?

如何使用 Webpack 进行引导?

html-webpack-plugin 在使用 webpack-dev-server 时不会将 js 文件注入 index.html

如何从 Webpack 4 中的页眉/页脚(和 css/js 注入)生成静态页面的 html 模板(lodash 模板不起作用)?