zoukankan      html  css  js  c++  java
  • build 文件夹中的 webpack.dll.config.js

     1 const fs = require('fs')
     2 const path = require('path')
     3 const webpack = require('webpack')
     4 const UglifyJsPlugin = require('uglifyjs-webpack-plugin') // 代码压缩插件
     5 
     6 
     7 // 你想要打包的模块的数组
     8 let vendors = [
     9   [
    10     "echarts",
    11     "wangeditor",
    12     "element-ui",
    13     "axios"
    14   ],
    15   [
    16     'vue/dist/vue.esm.js',
    17     'vue-router',
    18     'vuex'
    19   ]
    20 ]
    21 
    22 module.exports = {
    23   entry: {
    24     // 多入口,单入口情况,只需写一个,key值自定义,value值为数组
    25     xuAdmin0: vendors[0],
    26     xuAdmin1: vendors[1]
    27   },
    28   output: {
    29     path: path.join(__dirname, "../static/dll"), // 生成的文件存放路径
    30     filename: "[name].[chunkhash].dll.js", // 主要是给DllPlugin中的name使用,是给DllPlugin中的name使用
    31     library: "[name]_[chunkhash]" // 故这里需要和webpack.DllPlugin中的`name: '[name]_library',`保持一致(生成文件的映射关系,与下面DllPlugin中配置对应)
    32   },
    33   plugins: [
    34     // Dllplugin 它可以大大缩短编译的时间,提升构建速度
    35 
    36     /**
    37      *  重点:这里引入的Dllplugin插件,该插件将生成一个manifest.json文件,该文件供webpack.config.js中加入的DllReferencePlugin使用,
    38      *  使我们所编写的源文件能正确地访问到我们所需要的静态资源(运行时依赖包) 
    39      *  链接:https://www.jianshu.com/p/9c7815024bf5
    40      */
    41 
    42 
    43     new webpack.DllPlugin({
    44       // path.join(path1,path2,path3.......) 将路径片段使用特定的分隔符(window:)连接起来形成路径,并规范化生成的路径。若任意一个路径片段类型错误,会报错。
    45       path: path.join(__dirname, "../dllManifest", "[name]-manifest.json"), // 会生成一个json文件,里面是关于dll.js的一些配置信息
    46       name: "[name]_[chunkhash]", // 与上面output中配置对应
    47       context: __dirname // 上下文环境路径(必填,为了与DllReferencePlugin存在与同一上下文中)
    48     }),
    49 
    50     // 压缩打包的文件
    51     new UglifyJsPlugin({
    52       uglifyOptions: {
    53         warnings: false
    54       }
    55     }),
    56   ]
    57 }
  • 相关阅读:
    django学习之命令
    832. 翻转图像
    JUC线程池深入刨析
    CountDownLatch、CyclicBarrier、Samephore浅谈三大机制
    深入理解Atomic原子类
    浅谈volatile关键字
    web应用启动的时候SpringMVC容器加载过程
    MySQL锁机制
    TCP拥塞控制
    HTTPS的加密流程(通俗易懂,不可错过)
  • 原文地址:https://www.cnblogs.com/zhuyujie/p/14074646.html
Copyright © 2011-2022 走看看