如题,假设我把LigerUI的源码下载下来,插件有core.js、a.js、b.js...请问如何使用webpack打包它们并压缩?
以前我都是用的一个合并js和压缩工具弄的,比较麻烦,不如用命令行方便
以前我都是用的一个合并js和压缩工具弄的,比较麻烦,不如用命令行方便
解决方案 »
- 用jQuery移除重复的checkBox
- javascript 查找问题 谢谢啦 急
- extjs numberfield 格式问题
- iframe怎样才能在新窗口打开
- javascript如何获取上传文件的大小
- 如果使用下拉菜单控制input的只读属性?
- javascript判断操作系统
- 有没有比较快的算法或者函数得到小数的小数点后的位数?
- IE中下拉列表框<Select></select>总在最上层,设了 style中 Z-index也无用.
- 获取div中的name属性的值 [急]
- jquery.multiSelect 如何把选中的option设置为不可选
- 求出myArr1的最大值怎样输出myArr2的对应科目
文档写的很清楚啊
我根据这个安装成功过了,但没怎么用过。
现在一般用这个。
我以前也是用的工具压缩的,感觉每次都需要先合并文件(还得保证顺序,要不会出错,因为有依赖在里边),然后再压缩,感觉不如webpack方便,配置好了,只需敲个命令就等着就行了
(function ($) {
..这里写具体的插件代码
})(jQuery);
我比较迷茫
建个文件夹 进入文件夹
sudo npm init -y
sudo npm install --save webpack jquery
建个webpack.config.js 配置出入口 具体看文档
建个js 里边写
import $ from 'jquery'
//操作
建个html 引入webpack.config.js里配的出口js
1、首先 webpack.config.js做如下配置
module.exports 部分
entry: __dirname + "/main.js",//入口文件
output: {
path: __dirname + "/bdui",//打包后的文件存放的地方
filename: "bdui.min.js",//打包后输出文件的文件名
libraryTarget: "var"//输出格式
},
externals: {
"jquery": "jQuery"//指定变量是从外部url引入的,这样插件合并就不会报编辑错误
}
2、入口文件main.js内容
require('imports-loader?$=jquery!./bdui/plugins/core');
require('imports-loader?$=jquery!./bdui/plugins/inject');
require('imports-loader?$=jquery!./bdui/plugins/bdAccordion');
require('imports-loader?$=jquery!./bdui/plugins/bdButton');
......
3、合并压缩代码
webpack -p
这个命令行会自动调用自带的uglifyjs插件进行压缩(当然你可以在webpack.config里配置plugins,效果是一样的)
合并压缩问题是解决了,新问题来了,
我用js压缩工具压缩后是278KB,用webpack压缩后是377KB,我就纳闷了 ,差在什么地方呢?
请问大牛们还有什么办法让它继续缩小,还有我看min.js代码 大部分代码是没有混淆的啊??谁来给指点一下迷津??
备注: new webpack.optimize.UglifyJsPlugin({
compress: { warnings: false, },
output: { comments: false }
}) 这样配置后效果还是一样的,还是377KB