This commit is contained in:
by931
2022-09-06 22:30:37 +08:00
parent 66970f3e38
commit 3d6528675a
796 changed files with 3382 additions and 3382 deletions

View File

@@ -299,7 +299,7 @@ new CommonJsPlugin(options.module).apply(compiler);
</ul>
<p><strong>优化阶段</strong></p>
<p>优化阶段在 seal 函数中共有 12 个主要的处理过程,如下图所示:</p>
<p><img src="assets/Ciqc1F9bGtqAJo4uAABnYGwsyYs218.png" alt="image" /></p>
<p><img src="assets/Ciqc1F9bGtqAJo4uAABnYGwsyYs218.png" alt="png" /></p>
<p>每个过程都暴露了相应的 Hooks分别如下:</p>
<ul>
<li>seal、needAdditionalSeal、unseal、afterSeal分别在 seal 函数的起始和结束的位置触发。</li>
@@ -344,7 +344,7 @@ new CommonJsPlugin(options.module).apply(compiler);
module.exports = SamplePlugin;
</code></pre>
<p>执行构建后,可以看到在控制台输出了相应的统计时间结果(这里的时间是从构建起始到各阶段 Hook 触发为止的耗时),如下图所示:</p>
<p><img src="assets/Ciqc1F9bGvGAFRmpAAGFrvBhTHE475.png" alt="image" /></p>
<p><img src="assets/Ciqc1F9bGvGAFRmpAAGFrvBhTHE475.png" alt="png" /></p>
<p>根据这样的输出结果,我们就可以分析项目里各阶段的耗时情况,再进行针对性地优化。这个统计插件将在后面几课的优化实践中运用。</p>
<p>除了这类自己编写的统计插件外Webpack 社区中也有一些较成熟的统计插件,例如<a href="https://github.com/stephencookdev/speed-measure-webpack-plugin">speed-measure-webpack-plugin</a>等,感兴趣的话,你可以进一步了解。</p>
<h3>总结</h3>