gulp打包js多个文件夹并压缩混淆,编译ES6语法

感觉和webpack的步骤差不多

首先安装gulp:参考上一篇

安装完之后

新建一个文件目录起名

在当前目录下打开cmd

执行:npm init

创建package.json文件

然后安装第一个插件gulp-uglify

执行:

cnpm install gulp-uglify --save-dev   (这里暂时都用淘宝镜像cnpm)

这时候已经可以开始压缩es5的js文件了,但是我们要编译es6语法,那就需要babel

执行:

cnpm install gulp-babel --save-dev

编译ES6还需要@babel/core    @babel/preset-env

执行:

cnpm install @babel/core --save-dev
cnpm install @babel/preset-env --save-dev

这时候我们需要的插件都安装好了,下面就差个入口的配置文件了

在当前目录下新建gulpfile.js的文件,文件内容如下↓

//1.这个gulp对象就可以配合插件来进行构建工作.
const gulp = require(‘gulp‘);

//2.引入gulp-uglify模块.返回的是1个函数.
const uglify = require(‘gulp-uglify‘);

//3.引入babel
const babel = require(‘gulp-babel‘);

gulp.task(‘babeljs‘, async function() {
    gulp.src("src/**/*.js")
		.pipe(babel({
             presets: [‘@babel/env‘]
        }))//es6转es5
		.pipe(uglify())
        .pipe(gulp.dest(‘dist‘))
}); 

这时候我们就可以开始打包压缩并编译es6语法的js了

执行:gulp  babejs

ok!编译完成,对比一下编译前后的代码,例子↓

前:

后:

我们可以看到代码已经压缩,同时也混淆编译成es5了

good

原文地址:https://www.cnblogs.com/bobo1/p/10919656.html

时间: 2024-11-11 17:57:10

gulp打包js多个文件夹并压缩混淆,编译ES6语法的相关文章

使用Node.JS监听文件夹变化

使用Node.JS监听文件夹改变有许多应用场合,比如: 构建自动编绎工具 当源文件改变时,自动运行build过程,比如当你写CoffeeScript文件或SASS CSS文件时,保存之后可即时生成对应的JS或CSS. 构建自动布署工具 通过侦听源文件夹的改变,你可以自动即时将改后的文件布署到测试服务器,加快你的开发测试速度. 这些工具其实都需要侦听文件夹的改变,基于Node.JS的侦听文件夹改变的模块有很多. fs.watch 其中Node.JS的文件系统也可侦听某个目录的改变, 如fs.wat

vue-cli 打包输出到dist文件夹以后,丢入服务器,资源自动https加载的问题

把这个meta标签注释 <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> vue-cli 打包输出到dist文件夹以后,丢入服务器,资源自动https加载问题 原文地址:https://www.cnblogs.com/geekjsp/p/12147624.html

node复制文件夹,压缩zip,上传

一:用到的模块和简单介绍 npm文档:request :node请求的模块,可以给用程序请求服务器的接口https://www.npmjs.com/package/requestfs:读写文件的,很常用https://www.npmjs.com/package/fspath:路径,各种给文件夹弄路径什么的https://www.npmjs.com/package/pathjs-cookie:获取cokie的,在请求的时候需要用到https://www.npmjs.com/package/js-c

Linux下实现对某个文件夹进行压缩

tar -zcvf /home/xahot.tar.gz /xahottar -zcvf 打包后生成的文件名全路径 要打包的目录 例子:把/xahot文件夹打包后生成一个/home/xahot.tar.gz的文件. zip 压缩方法: 压缩当前的文件夹 zip -r ./xahot.zip ./* -r表示递归zip [参数] [打包后的文件名] [打包的目录路径]解压 unzip xahot.zip 不解释linux zip命令的基本用法是: linux zip命令参数列表: -a 将文件转成

gulp打包js/css时合并成一个文件时的顺序解决

1.可以使用插进gulp-order. 2.可以这样的写法: return gulp.src(['js/common.js','js/**/*.js']) .pipe(concat('build.js'))//合成到一个js .pipe(gulp.dest(buildBasePath+'js'))//输出到js目录 .pipe(uglify())//压缩js到一行 .pipe(concat('build.min.js'))//压缩后的js .pipe(gulp.dest(buildBasePat

gulp使用技巧-删除node_modules文件夹,解决目录层次太深删除报错的问题

问题描述: 在使用gulp当中,自动生成的node_modules文件夹,因为文件目录层级太深,无法系统删除,用360粉碎工具也报错 解决方法: 使用npm中的插件rimraf,专门用于删除的模块插件 1.安装:npm install -g rimraf(全局安装) 2.使用:先定位目标文件夹的父级目录,然后命令行输入rimraf ***(***为需要删除的文件夹名称), 案例:(命令行操作,删除gulptest下的node_modules文件夹) 整个node_modules文件夹被删除的干干

NW.JS File System 文件夹的操作( 创建, 删除, 读取 )

<script type="text/javascript"> /* * 引入File System 模块 */ var fs = require("fs"); /* * 创建文件夹的方法 * mkdir(path, callback(){}) * path: 文件夹所在路径 * callback("错误信息 <成功返回null>"): 回调函数 */ fs.mkdir('./test', function(err){ i

Node.js之删除文件夹(含递归删除)

应用场景:比如像Eclipse这样的IDE,右击项目,出现选项,点击选项中的删除,就可以删除这个项目及其下的子目录包含文件(使用electron开发的桌面端项目多少都会用到). 核心代码如下: /** * * @param {*} url */ function deleteFolderRecursive(url) { var files = []; /** * 判断给定的路径是否存在 */ if (fs.existsSync(url)) { /** * 返回文件和子目录的数组 */ files

nodeJS实现完整文件夹结构压缩

为实现node下打包压缩,了解额好几种常见的node第三方包,比如archiver,也可以实现文件夹打包压缩. 因为archiver需要配置文件夹下的文件,也可以用*来打包所有,但是如果文件夹下还有多层文件夹嵌套,实现起来就比较麻烦了.还有就是一些压缩工具的压缩算法并不符合我们想要的,或者输出文件的格式又比较单一,不能满足. 最后决定用node自带的内置模块加第三方模块结合使用,满足我们的各类需求,并且可以完美的打包整个文件夹包括文件夹结构来压缩. 需要模块如下: 其中fstream和tar为第