javaScript学习笔记day32————gulp

原神真端,原神服务端,虚拟机启动部署傻瓜式教学 没玩过抽卡 游戏想体验一下抽卡的感觉,听说原神有真端了,所以弄一个局域网的服务体验一下,这里要感谢一些服务端的分享者。 阅读详情

概念

gulp是一个自动化打包构建的一个工具,把我所写的文件压缩到指定的文件夹中;但它需要依赖一个node环境
 

gulp的安装:所以我们要在node中下载它npm i gulp -g    检测一下版本gulp -v   cnpm i gulp -g;

全局变量:gulp是一个工具,也是一个第三方模块,

项目依赖:是一个插件,第三模块,会在项目中使用到

压缩文件

压缩文件的步骤:

创建项目源码的目录结构

npm  init 生成项目的目录机构

创建项目结构(项目中所需要的文件夹)

安装gulp依赖,npm install--save-dev gulp

创建一个gulp的配置文件gulpfile.js;

配置gulpfile文件:

在gulpfile.js中导入gulp 依赖的‘npm install --save-dev’ v4版本

使用gulp创建一个压缩任务(在gulpfile.js写任务)

让gulp 的命令行中跑起来,帮我们执行压缩gulp任务名称

创建压缩任务:

  • 把gulp模块引入gulpfile.js文件中
  • 声明一个函数压缩任务的函数:function css(),并且这个函数中必须有returen
  • 在这个函数中写任务:
  1. gulp.src(需要压缩的 css 文件地址)
  2. 找到这些文件之后,就进行压缩   gulp.pipe() 这个方法就是帮我们做事情的,你可以在中这个括号中写正则把空格去掉,但是这样比较麻烦,已经有别人写好了这个插件(gulp-cssmin),我们直接下载就可以了 -D 就是--save-dev 的缩写
  3. 把压缩的文件放到指定的文件夹中 gulp.dest('你要放到哪里') + pipe(gulp.dest('文件路径')) + gulp.dest() 是一个方法,需要用 pipe() 来执行
  4. 必须要用exports把函数导出 才能使用
  5. gulpCss回车能得到结果
  function css() {
        return gulp
            .src("./src/css/**")
            .pipe(cssmin())
            .pipe(gulp.dest("./dist/css"));
    }
exports.gulpCss = css;

压缩文件的第三模块:压缩css

压缩css

  • npm i gulp-cssmin -D

压缩js

  • npm i -D gulp-babel@7.0.1
  • npm i -D babel-core
  • npm i -D babel-preset-env
  • npm i -D gulp-gulify
  • 创建压缩js的代码
  • 压缩 js 代码,必须先把 ES6 的代码转化为 es5 才能压缩 babel 就是转化的
  • function js() {
        return gulp
            .src("./src/js/**")
            .pipe(
                babel({
                    presets: ["env"],
                })
            )
            .pipe(uglify())
            .pipe(gulp.dest("./dist/js"));
    }

压缩html

  • cnpm i -D gulp-htmlmin
  • 创建压缩html的代码
  • 压缩 HTML 的时候必须传递一个参数,为对象
  •     {
            collapseWhitespace: true, // 表示去除空格
            removeEmptyAttributes: true, // 移出空的属性
            minifyCSS: true, // 压缩 style 标签
            minifyJS: true, // 压缩 script 标签
        }

清除缓存

  • npm i -D gulp-clean
  • 
    function clean() {
        return gulp.src(["./dist"]).pipe(gulpclean());
    }

创建一个多任务执行的任务

  •  gulp.series() 按顺序依次执行 同步执行,前面的任务执行完成之后在执行后面的任务gulp.parallel() 一起的任务同时执行 异步执行,会同时开启所有的任务,谁先执行完
exports.build = gulp.series(clean, css, js, html, data, static);
  •  在命令行 `gulp build` 就相当于执行这个两个方法中的所有任务

创建一个压缩完之后打开浏览器的服务

  • 下载gulp-webserver模块
  • npm install gulp-webserver

 导入模块:webserver需要传递一个参数

function webserver() {
        return gulp.src("./dist").pipe(
            webservers({
                host: "localhost", // 域名
                port: 3000, // 监听的端口号,统一写 3000
                open: "./html/index.html", // 打开的页面,相对于 dist 文件夹来的目录
                livereload: true, // 浏览器自动刷新,
                proxies: [
                    {
                        source: "/api", //随便起,相当于你要请求接口的替换名 ajax请求时就用这个名字
                        target: "https://www.duitang.com/", //需要请求的接口
                    },
                    {
                        source: "/maoyan", //随便起,相当于你要请求接口的替换名 ajax请求时就用这个名字
                        target: "http://gz2107.com", //需要请求的接口
                    }
                ],
            })
        );
    }

创建一个实时监听的任务(需要用到gulp.watch())

function watchs() {
    gulp.watch("./src/css", css);
    gulp.watch("./src/js", js);
    gulp.watch("./src/html", html);
    gulp.watch("./src/data", data);
    gulp.watch("./src/static", static);
}

导出模块:

// 必须要导出 只有导出之后 才能之后在命令行中执行这个任务 才会去执行压缩的代码
exports.css = css;
exports.js = js;
exports.html = html;
exports.img = img;
exports.data = data;
exports.clean = clear;
exports.server = server;
exports.babelPlitfill = babelPlitfill

exports.build = gulp.series(clear,
    gulp.parallel(css, indexHtml, html, js, bootstrap, img,data,babelPlitfill),
    server, watch)

复制某个模块:

function img() {
    return gulp.src("./src/img/**").pipe(gulp.dest("./dist/img"));
}

function bootstrap() {
    return gulp.src('./src/bootstrap/**').pipe(gulp.dest("./dist/bootstrap"));
}
function data() {
    return gulp.src("./src/data/**").pipe(gulp.dest("./dist/data"));
}

 

## 二阶段项目目录结构
-   登录注册 以及你自己写的数据放在phpstudy中 www 用phpstudy开启服务运行后端代码


-   前端项目
    +   用gulp开启服务来写前端代码
    +   在前端配置代理 请求后端的数据接口


## 用gulp开启服务 来写前端代码登录注册效果
-   涉及到代理

基于STM32F407的定时器以及定时器中断的实现 阅读详情

相关推荐

gulp-jsonminify:通过删除所有空格和注释将类似JSON的内容块缩小为有效JSON

gulp-jsonminify 通过使用删除所有空格和注释,将JSON的内容块最小化为有效JSON。 安装 npm install gulp-jsonminify --save-dev 用法 var jsonminify = require ( 'gulp-jsonminify' ) ; gulp . task ( 'minify' , function ( ) { return gulp . src ( [ 'path/to/files/*.json' ] ) . pipe ( jsonminify ( ) ) . pipe ( gulp . dest ( 'dist' ) ) ; } ) ; 执照 (麻省理工学院执照)

Js学习——gulp

Js学习——gulp gulp是一个常见的自动化构建工具,主要用来设定程序自动处理静态资源的工作。简单的说,gulp就是用来打包项目的。其他常见的前端构建工具还有Grunt,不过相比较gulp来说,比较老旧,功能少,更新少,插件少。 gulp全局安装 只需要安装一次 安装指令 : npm install gulp-cli -g 局部gulp : 给gulp提供核心功能的支持; (每个项目都需要重...

q9583979的博客 583

全套51单片机交通灯(附仿真,程序,原理图,PCB,论文等)

包含交通灯仿真图与仿真程序,pcb封装,元件清单,设计论文,实物图,制作详解,芯片资料等等,48M资源。

前端构建工具 gulpjs 的使用介绍及技巧

gulp.src(),所以很容易就能掌握,但有几个地方需理解透彻才行,我会在下面一一说明。为了避免出现理解偏差,建议先看一遍官方文档。

胡西风的博客 561

nodejs入门教程4:gulp基本概念

gulp是一个自动化构建工具,主要用于前端开发中,能够自动化地完成代码测试、检查、合并、压缩、格式化、浏览器自动刷新、部署文件生成等任务。gulp基于Node.js开发,利用流(stream)的方式处理文件,使得构建过程更加快速高效。通过以上介绍,相信您已经对gulp的基本概念有了初步的了解。gulp作为一个强大的自动化构建工具,在前端开发中发挥着重要作用。如果您需要更深入的学习和实践,建议查阅gulp的官方文档和相关教程。

691

node-gulp插件

gulp 介绍 gulp是一个基于 Nodejs 的自动化构建工具,中文主页: http://www.gulpjs.com.cn/ 能自动化地完成 javascript/coffee/sass/less/html/image/css 等文件的合并、压缩、检查、监听文件变化、浏览器自动刷新、测试等任务 使用步骤: 安装 nodejs。保证 node 是 6 以上的版本。 C:\Users\AppData\Roaming\npm 创建一个简单的应用 gulp_test,文件结构如下: |- gu

weixin_57218747的博客 405

js之自动化构建Gulp的基本使用

最新的 Gulp取消了同步代码模式,每个任务必须是异步任务,调用回调函数标记任务完成。4.处理stream 处理最常见,因为我们在自动化构建中,大多数情况都是在处理文件。Gulp 4.0 之前需要 Gulp 模块的task 方法实现注册任务。使用series 串行同步任务,使用parallel 并行异步任务。2.成功的状态修改是一个回调函数,可以使用Promise。3.任务本质就是一个异步方法,所以直接用async。新的注册任务的方式通过exports 导出。

sundaoli_0的博客 239

day32-gulp

gulp gulp是当下最流行的自动化构建工具,可以自动化完成我们开发过程中大量的重复工作 gulp能做什么 编译: es6->es5 sass->css less->css coffeescript->js 合并:css,js 压缩:css,js,html 优化:图片优化 准备工作 安装NodeJS环境 了解npm命令的使用 了解NodeJS模块化 了解gulp 安装与运行 全局安装gulp(一台电脑只需安装一次,gulp-v查询安装是否成功) np

kuangjianming的博客 191

gulp的使用

Gulp是基于node的一个自动化构建工具,开发者可以使用它构建自动化工作流程,页自动刷新,CSS预处理,代码检测,图片压缩等功能,只需要简单的命令行就可以全部完成。使用它,可以简化工作,让你把重点放在功能的开发上,同时减少人为失误,提高开发的效率和质量。node中的第三方包,通过npm下载gulp 是node中的第三方模块gulp.task(任务名,回调函数)gulp.src(文件路径) 设置文件的路径gulp.pipe() 管道方法 将文件流输出到指定的方法中。

m0_55836496的博客 1053

gulp

gulp 1.gulp的介绍 gulp是一种前端自动化构建工具,它可以将文件进行压缩、编译等多种处理。 gulp是基于node环境 gulp本质上就是node的第三方模块 2.gulp的使用 安装: 使用gulp时,需要安装安装全局gulp:npm i gulp -g 在磁盘上创建新文件夹,用来表示当前项目目录。 建议:路径不要太深,不要出现中文,至少不要出现特殊字符,不允许使用gulp...

qq_41628507的博客 239

小白也能快速上手gulp

1.gulp的介绍 前端自动化构建工具 自动化构建:工程化,将文件的压缩,编译,各种处理,流程化,形成流水线似的环节 gulp是基于node环境 其实本质上gulp就是node的第三方模块 2.gulp的使用 安装: 安装全局gulp:npm i gulp -g 在磁盘上创建新文件夹,用来表示当前项目目录 建议:路径不要太深,不要出现中文,至少不要出现特殊字符,不允许使用gulp作为文件...

ephemeral0的博客 380

gulp -简介 - 使用 - 插件常用 - 项目流程操作

一、node自带的npm工具的使用 node的模块中,有第三方模块,第三方模块的使用,需要先下载,怎么下载?打开百度,搜?不可能,太麻烦! node安装之后,会自带一个npm的下载工具,专门用来下载node的第三方模块,或一些其他工具 npm其实是一种 包 管理器 1.npm可以怎么用: 查看版本号 npm -v 初始化项目,创建项目的配置信息,列出当前项目中所有使用的包和其他信息 npm in...

pengzihui的博客 286

hexo博客优化

hexo博客优化 本地优化 文章链接唯一 Hexo默认使用的文章永久链接格式是: year/:month/:day/:title/ 缺点: 若标题为中文标题,则分享链接时会变成%X%X%X%之类的东西,非常难受.又臭又长,而且一旦更改标题和日期,链接会失效,非常不友好 解决方法: 采用 hexo-abbrlink插件 在博客根目录(执行hexo命令的地方)安装插件: npm install hexo-abbrlink --save 编辑站点配置文件 _config.yml 首先注释掉原先的per

Sizaif's 小屋 431

实用网站

tip VSCode如何配置本地服务器 https://jingyan.baidu.com/article/9989c746e671e6f648ecfea7.html 如何生成SSH key https://zhidao.baidu.com/question/1303468264429394659.html gulp.js https://gulpjs.com/plugins/ vscode: Visual Studio Code 常用快捷键 https://www.cnblogs.com/bindo

kjs--的博客 163

js:自动化构建 gulp

中文官网 英文官网 入门指南: 链接 每个 gulp 任务(task)都是一个异步的 JavaScript 函数,此函数是一个可以接收 callback 作为参数的函数,或者是一个返回 stream、promise、event emitter、child process 或 observable (后面会详细讲解) 类型值的函数 任务(tasks)可以是 public(公开) 或 private(私有) 类型的。(从 gulpfile 中被导出(export),可以通过 gulp 命令直接调用) Gul

qq_36413371的博客 377

gulp 自动打包压缩工具

本人分享一下这次字节跳动、美团、头条等大厂的面试真题涉及到的知识点,以及我个人的学习方法、学习路线等,当然也整理了一些学习文档资料出来是附赠给大家的。知识点涉及比较全面,包括但不限于前端基础,HTML,CSS,JavaScript,Vue,ES6,HTTP,浏览器,算法等等详细大厂面试题答案、学习笔记、学习视频等资料领取,点击资料领取直通车前端视频资料:如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端

2301_76232361的博客 855

Gulp】使用教程

文章目录自动化打包构建工具安装 gulp使用 gulp项目 gulp 配置打包 CSS 文件打包 SASS 文件打包 JS 文件GULP完整配置文件(简单版) 自动化打包构建工具 我们在开发的过程中,会写到 js 文件,css 文件,等等 我们的项目如果想上线,那么一定要体积小一点,文件大小越小越好 而我们在写 js 文件的时候,会有很多 换行/空格 之类的东西 这些 换行/空格 都是占文件体积的一部分 那么我们在上线之前就要吧这些 换行/空格 尽可能的删除掉 我们又不能一个文件一个文件的去删除 就要用到

qq_45677671的博客 1206

一天搞定前端必备开发技能 (3)——自动化构建工具gulp

gulp 是一个自动化构建工具,它使用 Node.js 编写,主要用于前端开发过程中的自动化任务。gulp 的核心功能是能够快速地执行常见的任务,如压缩 JavaScript 代码、编译 Sass 样式表、合并文件、优化图片等。接下来让我们开启gulp的学习之旅吧🥳!!!

qq_65034569的博客 1429

前端开发神器Gulp,真的太香了

Gulp前端自动化构建工具指南》摘要: Gulp是一款基于Node.js的高效前端自动化构建工具,通过流式处理与丰富插件生态,实现SCSS编译、JS/CSS压缩、图片优化等任务的自动化。本文系统讲解Gulp的核心应用:从环境配置(Node.js安装、项目初始化)到核心API(task/src/dest/watch)的使用,详解插件机制(如gulp-uglify、gulp-imagemin等),并通过实战项目演示多任务组合。同时提供性能优化技巧(缓存利用、错误处理)和自动化部署方案(gulp-ssh)。

大雨淅淅的博客 1645

Node 的使用

Evernote Export 一、为什么要用Node环境: js是一个脚本文件,不能直接用来操作文件 但是,在项目过程中,免不了需要经常操作一些文件,包括移动复制压缩上传修改等 如果重新学习C之类底层操作的语言的未免成本太高,此时node的横空出世,解决了这个问题 因为node使用了js的语法,而且使用js的人也越来越多,node就...

weixin_45566163的博客 394
上一篇: javaScript学习笔记day34————git and gitee
下一篇: 安装nvm 和 nvm的作用
huli1219
博客等级 码龄6年 24粉丝 · 12原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值