当前位置: 首页 > Web前端 > vue.js

Webpack进阶-理论

时间:2023-04-01 11:00:31 vue.js

webpack基本配置入口、输出、加载器、插件。webpack文件输出路径和引用路径webpack打包文件:独立文件和公共模块文件。chunkFilename函数:指定chunk名称,即指定通过webpack配置提取的公共模块名称。如果提取的文件是js文件,模块输出的文件名就是chunkFilename的值;对于css文件,它是newMiniCssExtractPlugin(options)中的options.chunkFilename。[name]chunkFilename中的变量值:在webpack中提取public模块进行配置的位置的name值,比如optimization.splitChunks.cacheGroups中的name值。[name]文件名中的变量值:条目键值。比如提取css文件中的文件名和js文件的文件名。file-loader或url-loader生成的独立文件中的[name]变量值:原文件名,如test.png,打包成独立文件后,名称为test。.js文件:文件输出路径:output.path+output.filename/output.chunkFilename文件参考路径:output.publicPath+output.filename/output.chunkFilename.css文件:文件输出路径:output.path+newMiniCssExtractPlugin(options)inoptions.filename/options.chunkFilename文件引用路径:options.filename/options.chunkFilenameinnewMiniCssExtractPlugin(options)其他如.png等:文件输出路径:output.path+options.outputPath+options。name——options文件在loader中的引用路径:optionsinloader,output.publicPath/options.publicPath+options.outputPath+options.name。注意:options.publicPath的权重高于output.publicPath。publicPath最好不要使用相对路径,否则会出现不可预知的错误。Webpack性能优化:打包速度和打包输出文件大小优化:TreeShaking和压缩代码。js代码压缩和TreeShaking:webpack-parallel-uglify-pluginwebpack.optimizationcss代码压缩和TreeShaking:purifycss-webpackpurify-cssoptimize-css-assets-webpack-plugin提取常用第三方包:webpack/lib/DllPluginwebpack/lib/DllReferencePlugin深入理解webpack-dev-server文件系统,将文件写入内存,写入内存的文件为Buffer格式。.Read通过memory-fs公开的方法读取文件。webpack-dev-middleware插件中暴露了读取内存文件和写入内存的方法。一般读写文件的方法都在context.fs对象中,context对象操作内存文件的方法由文件中的另一个setFs扩展控制。