gulp打包详解
gulp的作用
- 删除文件中冗余的内容,压缩文件,减小文件体积
- 实际项目中运行的都是压缩完成以后的文件
- 减小加载响应时间
gulp打包压缩对象
- html,css,js,sass,webserver
- 音频,图片,插件等正常情况下都是打包完成的,直接移动到dist文件中就可以
- 服务器食欲gulp一起绑定执行的,执行的是打包压缩好的程序文件
gulp执行过程
所有执行步骤必须严格遵守,尤其是语法规范必须严格执行
1、下载全局gulp
npm i -g gulp
2、创建项目文件
源文件src:
pages 存储html文件
css 存储css文件
sass 存储sass文件
images 存储图片
js 存储js文件
plug 存储插件
压缩文件 dist:
将压缩好的文件存放在dist中
文件名称与原文件名称保持一致
实际项目中为了保持文件名称路径一致,不添加多余的文件名后缀min等
3、文件初始化
整个项目第一次执行
npm init -y
实际项目中,或者下载git中的项目
下载 package.json 文件,到项目文件夹中
package.json 中 存储了所有依赖包的信息 以及 依赖包的相关设定
在项目路径下,执行 npm install 会自动安装依赖包
4、如果是第一次执行项目,需要逐一安装依赖包
如果是已经有完整的 package.json
将 package.json 复制拷贝到指定的文件夹中,执行 npm install 会自动安装记录的依赖包
安装依赖包 局部/项目依赖包
npm i gulp gulp 依赖包
npm i gulp-cssmin css压缩依赖包
npm i gulp-autoprefixer css添加前缀依赖包
npm i gulp-uglify ES5语法压缩依赖包
npm i gulp-babel 其他语法转化ES5语法规范
npm i @babel/core 与 gulp-babel 配合的依赖包
npm i @babel/preset-env
npm i htmlmin html压缩依赖包
npm i webserver 服务器依赖包
npm i del 删除文件依赖包
npm i sass sass文件依赖包
创建 gulpfile.js 文件,定义gulp打包压缩程序规范
1、加载所有依赖包
@babel/core 与 @babel/preset-env 是与gulp-babel配合使用的只需下载,不需要加载。
2、制定打包规范
a 、css 打包规范
const cssHandler = function(){
return gulp.src('./src/css/*.css')
.pipe( autoprefixer() )
.pipe( cssmin() )
.pipe( gulp.dest( './dist/css' ) )
}
"browserslist": [
"last 2 versions",
"IOS > 7",
"FireFox > 20"
]
b 、 js打包规范
const jsHandler = function(){
return gulp.src('./src/js/*.js')
.pipe( babel( {presets:['@babel/env']} ) )
.pipe( uglify() )
.pipe( gulp.dest( './dist/js' ) )
}
c 、 html打包压缩规范
d 、图片等不需要打包压缩的,就直接移动至dist文件夹
e , 设定 服务器执行规范 调用执行打包压缩好的文件
f、制定sass的编译打包压缩规范
设定监听程序
gulp打包详解的更多相关文章
- VS2010开发程序打包详解
VS2010开发程序打包详解 转自:http://blog.sina.com.cn/s/blog_473b385101019ufr.html 首先打开已经完成的工程,如图: 下面开始制作安装程序包. ...
- AssetBundle打包详解
Unity5.x AssetBundle打包详解 在网上查看了很多资料,想详细搞清楚AssetBundle的原理.以实现符合项目需求的打包工具和加载逻辑 1. AssetBundle是什么? Asse ...
- Hadoop基础-Idea打包详解之手动添加依赖(SequenceFile的压缩编解码器案例)
Hadoop基础-Idea打包详解之手动添加依赖(SequenceFile的压缩编解码器案例) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编辑配置文件(pml.xml)(我 ...
- python 打包详解
基本步骤: 1. 写setup.py 2. 运行“python setup.py sdist” 3. 在当前目录下会生成文件夹“dist”,打包好的代码就在dist中,以“.tar.gz”的形式被压缩 ...
- UDK游戏打包详解
转自:http://blog.sina.com.cn/s/blog_944177030100ycki.html 安装完的udk目录下有4个主要的文件夹 Binaries -这个文件夹包含游戏的exe程 ...
- [Android Pro] Java进阶学习:jar打包详解
jar文件听说过吗,没有?或者陌生!好,没关系,这就是我们的第一站:打包发布. 为什么会有这个玩意呢,首先,这是jar的全称:JavaTM Archive (JAR) file,是的,就是java存档 ...
- gulp使用详解
前面整理了 gulp使用入门,本节介绍相关的压缩 1.压缩js文件 步骤同基础步骤,相关可以看入门篇 npm install gulp-uglify --save-dev 引入js压缩库 gulpfi ...
- 使用intellJ导入非maven,gradle等非构建工程的依赖,发布工程时候的打包详解
一.导入 1.java项目在没有导入该jar包之前,如图: 2.点击 File -> Project Structure(快捷键 Ctrl + Alt + Shift + s),点击Proje ...
- web程序打包详解
重要更新:鉴于很多小伙伴们说看不到图,我这边换了几个浏览器看了下,都看得到的,估计是网速问题,请耐心等待,另外,为了更好的方便大家学习,特此提供源码以及一个word文档,word文档就是本文内容 ...
随机推荐
- k8s-2-集成apollo配置中心
主题: 在k8s中集成Apollo配置中心 架构图 一.配置中心概述 配置的几种方式 本课讲得是基于配置中心数据库实现 配置管理的现状 常见的配置中心 主讲:k8s configmap,apollo ...
- codeforces 5C
C. Longest Regular Bracket Sequence time limit per test 2 seconds memory limit per test 256 megabyte ...
- mybaits(十)mybatis常见面试
面试题总结 1.MyBatis 解决了什么问题? 或:为什么要用 MyBatis? 或:MyBatis 的核心特性? 1)资源管理(底层对象封装和支持数据源) 2)结果集自动映射 3)SQL 与代 ...
- js assert
js assert console.assert The console.assert() method writes an error message to the console if the a ...
- c++指针练习
Pointers 在getchar处断点,断点后,调试->窗口->反汇编 查看数据 main #include <iostream> #include <Windows. ...
- 开始 nx
官网 video 详解Nx, 必读 配置代理 每次创建lib都要重启编辑器 创建项目 选择empty,然后选择Angular CLI 因为可以使用Angular Console λ npm init ...
- 「NGK每日快讯」2021.1.21日NGK公链第79期官方快讯!
- Linux文件和零拷贝
本文转载自文件和零拷贝 文件概述 文件描述符 文件描述符:在Linux中,所有的文件都是通过文件描述符引用.fd是一个非负整数.按照惯例,标准输入的fd是0,标准输出的fd是1,标准错误的fd是2.分 ...
- 链接服务器sql语句
EXEC sp_addlinkedserver @server='sha',--被访问的服务器别名 @srvproduct='', @provider='SQLOL ...
- 我ssh框架遇到报错及处理方式
Exception encountered during context initialization - cancelling refresh attempt 修改hbm.xml后遇到的问题,错误可 ...