首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Gulp进行JavaScript自动化简易说明书

Gulp的代替品 gulp有很多的代替品,其中大多数在几年前就已经存在了,最著名的就是Grunt。Gulp和Grunt之间的比赛永远不会有一个明确的赢家,因为他们都有利弊,所以我会避免深入研究。...Watchers 当检测到更改时,Watchers观察源文件以进行更改和调用任务。 gulpfile.js gulp项目的配置文件。...运行以下命令并观察,/ scss文件夹中的所有SCSS文件都将编译到相应目录中的CSS中: gulp scss 请注意,在本示例中,我们指定了要运行的任务。...为了启动它,请使用以下命令: gulp 这个命令启动名为 “default”并开启watcher.的任务,此时,您可以编辑任何SCSS文件,并重新编译CSS文件。...以下是几个杰出的例子: BrowserSync BrowserSync注入CSS,JavaScript,并在进行更改时自动刷新浏览器。

3.2K10

给初学者的Gulp教程(译)

它经常用来进行一些前端任务,比如: 生成一个Web服务器 当一个文件保存时,浏览器自动刷新 编译像Sass或者LESS一样的预处理器 优化资源文件,像CSS,JavaScript和图片等 这些并不是Gulp...Gulp预处理 在Gulp中,我们可以将Sass编译成CSS,使用一个叫做gulp-sass的插件。...watch-compile.gif 让我们来进行下一步,以及让Gulp重新加载浏览器,当我们保存一个.scss文件,通过Browser Sync。...2.使用Sass编译器 3.当文件改变后,自动重新加载浏览器 让我们进入下一届,讨论优化资源文件的部分。...组合Gulp任务 让我们总结一下我们做的吧。到目前为止,我们创建了两个不同Gulp任务集。 第一个任务集是一个开发进程,我们可以用它编译Sass到CSS,监视文件的修改,从而重新加载浏览器。

4.4K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    09_Webpack打包工具

    在定义和使用类比中两者都有各的用途,同时webpack为初级编译程序,gulp为高级编译程序,在功能上要比webpack应用程序中多。...gulp在编程方面较为复杂,但是可用的组件也会更多,手动编译的情况下耗时较长,同时此软件不适合初级入门者使用。...Gulp侧重于前端开发的整个过程的控制管理(像是流水线),我们可以通过给gulp配置不通的task(通过Gulp中的gulp.task()方法配置,比如启动server、sass/less预编译、文件的合并压缩等等...,会自动生成bundle.js文件,它不会放到物理磁盘上,而是放到了内存中,是一个虚拟的看不见的bundle.js文件。...html-webpack-plugin插件 npm install html-webpack-plugin -D 实例化HtmlWebpackPlugin() 配置html-webpack-plugin插件 重新进行打包

    7910

    【Sass学习笔记】003-Sass的语法格式及编译调试

    sass sass/:css/ 缺点和解决方案 在实际编译过程中,你会发现上面的命令,只能一次性编译。每次个性保存“.scss”文件之后,都得重新执行一次这样的命令。...如此操作太麻烦,其实还有一种方法,就是在编译 Sass 时,开启“watch”功能,这样只要你的代码进行任保修改,都能自动监测到代码的变化,并且给你直接编译出来: sass --watch 编译的Sass...一旦我的 bootstrap.scss 文件有任何修改,只要我重新保存了修改的文件,命令终端就能监测,并重新编译出文件: [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bDEoGEk1...而至于人为失误造成的编译失败,在编译过程中都会有具体的说明,大家可以根据编译器提供的错误信息进行对应的修改。...在 Sass 中编译出来的样式风格也可以按不同的样式风格显示。

    4600

    Gulp 工作流中Sass 增量编译功能的探索

    后面的故事倒有些题外话了,简单概括是我在接下来的半年发挥了一些“主观能动性”将整个工作流做了一番优化。其中涉及到的就是本文所言的在Gulp 工作流中Sass 增量编译功能的探索。....pipe(sass()) .pipe(gulp.dest('dist')); }); 如上面的写法,就能做到你修改了a.scss ,在接下来的pipe 中 a.scss 才会去编译;修改了...b.scss,接下来的pipe 中只有 b.scss 去编译而a.scss 不会。...解决方法也呼之欲出了,在cached() 与 sass() 的pipe 的中间我们还需要一个步骤,即将传入的改动文件找出其上下关系的依赖文件,整体文件集传入到 sass() 的pipe 去执行编译。...4 中的增量编译 上面的这套方案执行后,我们在执行Gulp 进程中,除第一次第二次,从第三次编译开始就是增量编译了,时间也将为1s 以内。

    1.4K60

    武装你的小程序——开发流程指南

    本篇文章你可以学到: 如何使小程序支持scss; 怎样通过gulp编译你的项目; 项目常用的模块封装; 小程序同webview之间如何优雅的进行交互; 集中式管理你的项目提高可维护性; 提升开发效率的小工具编写...并不会将整个项目的搭建流程细致的写出来,而是挑其中我认为在开发过程中存在的一些很重要的点进行详细陈述。... 项目说明文件 package.json 项目配置文件 编译用到的插件 使用npm或yarn自行安装,安装过程不过多赘述,不会请自行搜索。..."gulp": "^3.9.1" "gulp-sass": "^4.0.2" scss编译插件  "gulp-postcss": "^6.4.0" 强大的css处理插件  "gulp-rename":...启用gulp-sass编译scss文件, 通过postcss对低版本ios和安卓进行兼容样式处理 gulp-rename更改文件后缀为.wxss gulp-replace通过正则匹配@import语句打开注释

    3.9K40

    89.精读《如何编译前端项目与组件》

    webpack parcel gulp 生态的区别 babel 一般不会解析模块,也就是一般仅做代码预处理,而不会改变文件结构,也对 require、import 语句不敏感。...组件构建的目的主要在于发布 NPM,除了 ESNext 规范会使用 Babel 编译成 ES3,大部分代码写的很收敛,甚至对 SASS 的使用都要与 Typescript 插件一起组合成复杂的 Gulp...原因就是构建组件的代码太原始,冗余的代码没有删除,甚至直接引用的 SASS 代码仍然保留,更危险的是带上了一些特殊 webpack loader 才支持的语法。...进行项目编译时,开启 production 模式。 进行组件编译时,开启 production 模式,且利用 webpack-node-externals 插件忽略 node_modules。...,不需要 TreeShaking,因为这些在组件代码编译时全部已经做好了,这种构建效率几乎达到最大。

    1.1K20

    武装你的小程序——开发流程指南

    本篇文章你可以学到: 如何使小程序支持scss; 怎样通过gulp编译你的项目; 项目常用的模块封装; 小程序同webview之间如何优雅的进行交互; 集中式管理你的项目提高可维护性; 提升开发效率的小工具编写...并不会将整个项目的搭建流程细致的写出来,而是挑其中我认为在开发过程中存在的一些很重要的点进行详细陈述。...项目说明文件 package.json 项目配置文件 编译用到的插件 使用npm或yarn自行安装,安装过程不过多赘述,不会请自行搜索。..."gulp": "^3.9.1" "gulp-sass": "^4.0.2" scss编译插件 "gulp-postcss": "^6.4.0" 强大的css处理插件 "gulp-rename...启用gulp-sass编译scss文件, 通过postcss对低版本ios和安卓进行兼容样式处理 gulp-rename更改文件后缀为.wxss gulp-replace通过正则匹配@import语句打开注释

    2.1K30

    最流行的4种前端构建项目工具介绍

    不管我们用什么,总之,我们还是希望使用那些能够处理在浏览器端的方案,所以出来了编译方案。历史上已经有很多分享了,比如 Make 可能是很多解决方案中最知名且是可行的方案。...这是一个很好的解决方案,但是请相信我,你不会想看到一个 300 行的 Gruntfile。...它的优势是你可以发布到 NPM 上来避免重新发明轮子。 Browserify solves this problem....你可以用 Gulp 调用它,此外有很多转换小工具可以让你更兼容的使用(比如 watchify 提供了一个文件监视器帮助你在开发过程中更加自动化地把文件合并起来),这样会省下很多精力。...它不会解决所有事情,只是解决一个打包的难题,无论如何,这是在开发过程中需要解决的问题。

    1.6K30

    用 npm scripts 来构建前端项目的尝试

    用静态服务器不会产生这个问题。 监视 Sass 文件的变化。变化时,编译生成 CSS 以及 sourcemap。用 Compass。 监视 ES6 文件的变化。...start:server watch:sass watch:es6", "watch:sass": "compass watch",// 监视 Sass 文件的变化 "watch:es6": "...将 ES6 代码编译成 ES5 代码,合并(如果有需要的话),并压缩。用 Webpack + Babel。 将 Sass 代码编译成 CSS 代码,并压缩。用 Compass。...将 源代码目录下的除了 ES6 和 Sass 代码外的其他代码都移动到发布文件目录下。用 Gulp。用 Gulp 是为了跨平台,如果不要跨平台,可以用当前平台的命令行的命令来做移动目录会更简单。..."build:css": "compass compile", "moveAssets": "node_modules/.bin/gulp",// 将 源代码目录下的除了 ES6 和 Sass 代码外的其他代码都移动到发布文件目录下

    1.4K20

    WEB前端 :“懒人”养成计划

    懒在人一开始的印象中,总是给人一种不好的感觉,勤奋一直是传统美德,懒是坏东西。然而事实真是这样吗?...可见LESS,SASS之流行。...在我理解看来,一直把LESS,SASS还有其他的比如PostCSS看成一种工具,没当成语言来看待,就是为了让CSS可编程,更方便的去写CSS,更好的管理CSS,然后编译生成CSS。...当然,这篇文章不会讨论他们语法差异以及谁好谁坏,在我看来,适合自己的,适合项目的,就是好的。 SASS十分钟入门:http://www.w3cplus.com/sassguide/ SASS一瞥 ?...使用GULP,可以完成文件压缩,JS混淆,编译SASS,LESS 等,基本上你想要的功能,都可以通过代码实现。在项目,我还用GULP来下载文件,更新本地的JSON数据。

    93080

    Gulp 在金蝶云平台项目中的使用经验

    下面代码是使用 gulp 初次来编译 sass,由于一直都有点习惯了 Grunt 那编译速度单位为秒级别的速度,刚输入命令还没反应过来,就已经以毫秒级的速度编译完了。...'); // sass 编译 gulp.task('sass:dev', function() { return gulp.src('dev/sass/**/*.scss') .pipe(...配置文件 命令 $ gulp help # 说明帮助 $ gulp sass # sass 本地编译 $ gulp jshint...# 开发监控,浏览器自动刷新 $ gulp build # 打包上线 开发阶段 执行 gulp dev 命令,gulp 会进行一系列构建操作,最后在 dist 目录下生成可运行文件...:html', cb ); }); 最终生成的代码依然在 dist 目录下,也就是说在开发阶段与上线打包阶段构建生成的代码都在同一个目录下,只不过在开发阶段代码是未进行合并压缩

    1.7K00

    gulp自动化打包(上)

    gulp-less 一个编译less文件的插件,在less编译中,可选择添加插件,如【autoprefix】,自动添加CSS前缀的插件,代码实现为: var less=require('gulp-less...如果是sass开发,就下载gulp-sass的相关插件。 gulp-minify-css 一个压缩css的插件,与uglify类似,只不过一个压缩JS,一个压缩CSS。...比较方便的做法就是直接把lm-library一起都算进压缩编译的路径当中,给import的less文件添加reference的属性,这样就不会对lm-library.less进行编译了,也不会影响正常的...当然也可以在gulp中使用依赖注入的方法。...,普通的注入,相互之间依赖过后,可读性就会变差,而sequence会让代码看起来更优雅,写起来也更简单。

    1.7K30

    postcss-lazysprite: 一种生成CSS 雪碧图的懒惰姿势

    /sprite.css', processor: 'sass', }) .pipe(gulpif('*.png', gulp.dest('..../dist/css/'))) }); 另一种是国内以cssgaga、gulp-tmtsprite 为代表的,在开发阶段是写单个小图的CSS 样式,然后也是通过构建工具的注册任务进行合并产生雪碧图的插件...CSS(现在一般是Sass 或Less 的源文件)以及雪碧图源图(即单个小图);dist则是编译后 CSS 及产生的雪碧图图片及其CSS。...所以只要在开发阶段没有动过图片或修改@lazysprite 的代码,除开发阶段第一次启动 Gulp 任务的时候,其它时间均不会重复运行相关流程。...另外在配置了SmartUpdate后,会将生成的图片文件名加入 hash,这样下一次启动 Gulp 任务的时候,只要源图片没有变化,也不会重复雪碧图流程。

    1.7K90

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券