webpack打包某个文件夹下的所有js

例如我们想打包src下common中的所有js文件


微信图片_20190827144825.png

1.1 创建项目目录,使用npm init初始化

mkdir webpack-demo && cd webpack-demo
npm init -y

初始化完成后,目录下会生成package.json

1.2 按照 webpack 4以上还需要安装webpack-cli

npm install --save-dev webpack webpack-cli

2.打包js文件

自webpack4.0起,webpack.config.js不再是必须的配置文件,但依然是默认的配置文件。

"scripts": {
  "build": "webpack --config webpack.config.js --progress --colors"
}

2.2 配置webpack.config.js

const path = require("path");
module.exports = {
    mode: "development", //打包为开发模式
   entry:["./demo/accordion",
    output: {
        //输出路径和文件名,使用path模块resolve方法将输出路径解析为绝对路径
        path: path.resolve(__dirname, "./dist"), //将js文件打包到dist/js的目录
        filename: "tuitui-ui.js"
    }
}

执行npm run build可以在控制台看到有输出,在dist目录下会生成一个js文件。

微信图片_20190827145026.png

查看dist/tuitui-ui.js文件,可以看出a.js和b.js还有c.js确实被打包在一起了。


微信图片_20190827145119.png

但是可以看到这种方式的扩展性非常差,如果在文件夹下增加了新的文件,那么就要重新修改webpack配置文件。非常不利于跟踪。

2.3 引用glob来帮忙 安装glob

npm install glob --save-dev

把webpack配置改成如下

const path = require("path");
const glob = require("glob")

module.exports = {
    mode: "development", //打包为开发模式
    entry: glob.sync('./demo/*.js'),
    output: {
        //输出路径和文件名,使用path模块resolve方法将输出路径解析为绝对路径
        path: path.resolve(__dirname, "./dist"), //将js文件打包到dist/js的目录
        filename: "tuitui-ui.js"
    }
}

这样我们某个目录下的所有js就全部打包在一个js里面了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写在开头 先说说为什么要写这篇文章, 最初的原因是组里的小朋友们看了webpack文档后, 表情都是这样的: (摘...
    Lefter阅读 5,335评论 4 31
  • 前言 本文主要从webpack4.x入手,会对平时常用的Webpack配置一一讲解,各个功能点都有对应的详细例子,...
    BetterChen阅读 1,969评论 0 3
  • 记得2004年的时候,互联网开发就是做网页,那时也没有前端和后端的区分,有时一个网站就是一些纯静态的html,通过...
    阳阳阳一堆阳阅读 3,348评论 0 5
  • 目录第1章 webpack简介 11.1 webpack是什么? 11.2 官网地址 21.3 为什么使用 web...
    lemonzoey阅读 1,761评论 0 1
  • 前言:我不会写鸡汤,此文章仅仅是无聊,太热,来公司避(空)暑(调),有感而写. 时间:周六,两点半,实际上我刚吃完...
    杨柳小易阅读 321评论 0 1