English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Explicación detallada de la forma correcta de extraer bibliotecas de terceros en webpack

我们在用webpack打包是时候,常常想单独提取第三方库,把它作为稳定版本的文件,利用浏览缓存减少请求次数。常用的提取第三方库的方法有两种

  1. CommonsChunkPlugin
  2. DLLPlugin

区别:第一种每次打包,都要把第三方库也运行打包一次,第二种方法每次打包只打包项目文件,我们只要引用第一次打包好的第三方压缩文件就行了

CommonsChunkPlugin方法简介

我们拿vue举例

const vue = require('vue')
{
 entrada: {
 // bundle是我们要打包的项目文件的导出名字, app是入口js文件
 
 // 
 
 }
 salida: {
   + //','
 // 
 filename:
 }
 plugins: {
 // 这里实例化webpack.optimize.CommonsChunkPlugin构造函数
 // 打包之后就生成vendor.js文件
 
 }
}

<script src="///script>
 <script src="///script>

const webpack = require('webpack')
const library =
const path = require(
module.exports = {
 entrada: {
 
 }
 salida: {
 
 ruta: 'dist/','
 
 }
 plugins: [
 
  path: path.join(__dirname, 'dist', '第2段': 'new webpack.DllPlugin({', '第3段': 'library', '第4段': 'filename: '[name].dll.js',', '第5段': 'vendors: ['vue', 'vuex']/[name]-manifest.json'),
  // Esto debe coincidir con la opción de salida.library anterior
  nombre: biblioteca
 }),
 ]
}

La configuración del archivo webpack.config.js es como sigue

const webpack = require('webpack')
module.exports = {
 entrada: {
 app: '.',/fuente/índice
 }
 salida: {
 nombreDeArchivo: 'app.bundle.js',
 ruta: 'dist/','
 }
 plugins: [
 new webpack.DllReferencePlugin({
  context: __dirname,
  manifest: require('./dist/vendors-manifest.json')
 }
 ]
}

Luego ejecuta

$ webpack --configuración webpack.dll.config.js
$ webpack --configuración webpack.config.js

modo de referencia de html

<script src="/dist/vendors.dll.js"></script>
<script src="/dist/app.bundle.js"></script>

Esto es todo el contenido de este artículo, espero que sea útil para su aprendizaje y que todos apoyen el tutorial de grito.

Declaración: El contenido de este artículo se ha obtenido de la red, es propiedad del autor original, el contenido se ha contribuido y subido por los usuarios de Internet de manera autónoma. Este sitio no posee los derechos de propiedad, no ha sido editado por humanos y no asume ninguna responsabilidad legal relacionada. Si encuentra contenido sospechoso de infracción de derechos de autor, por favor envíe un correo electrónico a: notice#oldtoolbag.com (al enviar un correo electrónico, por favor reemplace # con @) para denunciar y proporcionar evidencia relevante. Una vez confirmado, este sitio eliminará inmediatamente el contenido sospechoso de infracción.

Te gustará