【发布时间】:2016-11-24 04:12:44
【问题描述】:
我知道当使用像 webpack 这样的模块加载器时,结果输出将是一个像 bundle.js 这样的 JavaScript 文件。现在在index.html我只需要引用以下内容:
<script src="bundle.js"></script>
我的问题是,如果我有一个 .js 文件,动态模块加载是如何发生的?在我的理解中,也许我离这里很远,但是模块加载器的整个想法不是不服务器模块.js文件直到需要它?因此不必从应用程序和index.html 开始加载所有文件。好吧,如果我已经提供了来自index.html 的单个bundle.js 文件,那么该文件中的单独模块如何异步提供并且仅在需要时提供?那时我觉得我已经为下载文件受到了打击,所以性能部分没有得到提升。
当整个应用只提供一个捆绑的 .js 文件时,模块加载器如何工作?
【问题讨论】:
-
该包仅包含
required或其他文件(取决于捆绑器),因此您可以在项目中拥有大量模块(或者更有可能是正在构建项目的框架in) 并且只有您在应用中明确使用的那些会被捆绑。 -
Webpack 不是一个模块加载器,它是一个模块 bundler。正如您所说,它将所有代码组合到一个文件中。这是非常不同的,任何地方都不会发生动态加载。
-
@Sami:除非你进行代码拆分,这是非常值得鼓励的。
标签: javascript webpack bundling-and-minification