javascript - 我可以使用 webpack 单独缩小文件吗?

标签 javascript webpack minify

我有一个项目,其中有许多 JavaScript 文件,分别位于多个文件夹中。

root
 | - index.html
 | - lib
 | -- jquery-ui.js
 | -- jquery.js
 | -- html2canvas.js
 |  
 | - js
 | -- main.js
 | -- app1.js
 | -- app2.js
 | -- app3.js

并且需要使用 webpack 分别缩小这些文件,以便每个文件保留其路径。

我不想在一个文件中包含所有代码。

我当前的配置:

const path = require('path');

module.exports = {
    entry:[
        './js/index.js',
        './pages/MCF/js/index.js',
        './pages/MCF/js/refresh.js',
        './pages/MCF/lang/index.js',
        './pages/MCF/lib/scriptJs/script.js',
        './pages/MCF/lib/scriptJs/load.js'
        ],
    output :{
        path :path.resolve('./prod/js'),
        filename: "app.min.js"
    },
    module:{
        rules:[
        {
            test:/\.js$/,
            exclude: /(node_modules|bower_components)/,
            use:['babel-loader']
        }
        ]
    }
}

最佳答案

You can take a reference from here for multiple-entry-points.

这是您应该采用的单独文件构建方式:

module.exports = {
  entry:{
    main      : './js/index.js',
    main2     : './pages/MCF/js/index.js',
    refresh   : './pages/MCF/js/refresh.js',
    langindex : './pages/MCF/lang/index.js',
    script    : './pages/MCF/lib/scriptJs/script.js',
    load      : './pages/MCF/lib/scriptJs/load.js'
    },
    output :{
      path :path.resolve('./prod/js'),
      filename: "[name].min.js"
    },
    ...
};

[名称].min.js

这个[name]可以让您将每个条目的构建保存为给定的名称(键)。输出将是:

./prod/js/main.js, 
./prod/js/main2.js
// so on

关于javascript - 我可以使用 webpack 单独缩小文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51514855/

相关文章:

javascript - 使用 Web Worker 进行异步 Canvas 绘制

javascript - 使用 base64 编码图像是否有一些性能优势?

javascript - 使用 Angular CLI 和 Angular 5 在运行时动态加载新模块

jquery - CSS/JS/Jquery 中的空格是否占用空间?

jquery - 如何缩小 jQuery 代码?

javascript - 当用户将鼠标悬停在 Canvas 上时创建动画

node.js - Dokku找不到 'webpack'

css - VueJS + Webpack + 动态 CSS

php - 带有 PHP 扩展的 CSS 缩小

javascript - 将 D3 包含在 ERB 循环中