首先需要nodejs和npm

然后安装Gulp及其Sass预处理器

在主题目录的根目录中,创建一个空的package.json并复制粘贴以下代码:

{
"author": "Magento Commerce Inc.",
"description": "Magento node modules dependencies for local development",
"version": "1.0.0",
"main": "gulpfile.js",
"dependencies": {
"bower": "^1.8.8",
"gulp-autoprefixer": "^6.1.0",
"gulp-clean-css": "^4.2.0",
"gulp-concat": "^2.6.1",
"gulp-install": "^1.1.0",
"gulp-webserver": "^0.9.1",
"path": "^0.12.7"
},
"devDependencies": {
"gulp": "^3.9.1",
"gulp-livereload": "^4.0.1",
"gulp-notify": "^3.0.0",
"gulp-plumber": "^1.1.0",
"gulp-sass": "^3.2.1"
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
}
}
  1. 通过在命令提示符中运行以下命令来安装Gulp:

    sudo npm i gulp -g

  2. 通过运行以下命令为Sass预处理器添加gulp-sass包:

    npm install gulp-sass

  3. 创建gulpfile.js
    var gulp         = require('gulp'),//gulp模块
    sass = require('gulp-sass'),//.sass编译模块,将sass文件(.scss和.sass后缀)编译成css文件
    plumber = require('gulp-plumber'),
    notify = require('gulp-notify'),
    auto = require('gulp-autoprefixer'),
    cleanCss = require('gulp-clean-css'); // css压缩
    webserver = require('gulp-webserver'), //热更新模块,每次编辑完保存时,自动更新网页信息
    concat = require('gulp-concat');//合并模块、可以将多个css文件合并成一个文件 var config = {
    src : './web/scss/**/*.scss',
    dest : './web/css/',
    target : 'custom.css',
    from : './web/scss/custom.scss'
    }; gulp.task('server',function(){
    gulp.src('./')
    .pipe(webserver({
    host:'127.0.0.1',
    port:'8888',
    livereload:true,
    directoryListing:false
    }))
    }) // Error message
    var onError = function (err) {
    notify.onError({
    title : 'Gulp',
    subtitle: 'Failure!',
    message : 'Error: <%= error.message %>',
    sound : 'Beep'
    })(err); this.emit('end');
    }; // Compile CSS
    gulp.task('styles', function () {
    var stream = gulp
    .src(config.from)//需要编译的目标文件
    .pipe(plumber({errorHandler: onError}))
    .pipe(sass().on('error', sass.logError)); return stream
    .pipe(concat(config.target))//合并为目标文件
    .pipe(auto({//处理兼容
    browsers:['last 2 version'],
    cascade:false
    }))
    .pipe(cleanCss())//压缩
    .pipe(gulp.dest(config.dest))//合并后的文件放置
    .pipe(notify({
    message: 'SASS converted to CSS'
    }));
    });
    gulp.task('watch', function () {
    gulp.watch(config.src, ['styles']);//监听目标目录下的文件改动,并且调动task
    });
    gulp.task('default', ['styles', 'watch', 'server']);
  4. 命令行gulp。每当目标文件改动就会自动编译,建议在custom.scss中使用@import引入组件scss,方便开发和管理。

gulp&sass安装配置的更多相关文章

  1. Gulp的安装配置过程和一些小坑

    谈谈gulp. 项目尾声,老师叫我去熟悉一下grunt前端自动化工具,第一次知道这种东西,我就查各种资料啊,发现grunt已经‘过时’了,大家都用gulp和webpack.我当然选择了配置最简单的gu ...

  2. sass 安装、配置,css规则

    http://blog.csdn.net/oyuemijindu/article/details/51036096 --sass 安装 一安装  1.ruby下载,可以到官网下载 ,注意如果是系统如果 ...

  3. SASS的一些使用体会(安装-配置-开启firefox的调试)

    对CSS预处理这个东西的看法,基本就是2种 第一种:不就是css吗,我会写就好了搞得那么复杂干嘛 第二种:感觉这个东西非常有必要,它规范了代码,使开发变得更轻松 好吧以前我是第一种,并且觉得又要配置环 ...

  4. sass ruby环境 安装配置,使用sublime text3 中sass

    首先,你想要使用sass的话,就必须依赖于ruby环境.所以,你要下一个ruby.具体的链接应该是(http://rubyinstaller.org/downloads).下载相应的版本.- 下载好之 ...

  5. 【gulp】Gulp的安装和配置 及 系列插件

    注意:要安装俩次gulp(全局和本地):全局安装gulp是为了执行gulp任务,本地安装gulp则是为了调用gulp插件的功能. 之前由大牛帮忙配置的gulp来用.今天时间充裕,就和小伙伴一起动手配置 ...

  6. vue中sass的配置安装流程

    1.安装node-sass,因为scss是基于此库的 cnpm install --save-dev node-sass 2.安装sass-loader cnpm install --save-dev ...

  7. gulp的安装和配置

    gulp的安装和使用方法 1先是有node为前提的, 2安装淘宝镜像 2.1因为很多npm包都是国外的,所以安装起来很慢,所以我们可以利用淘宝的镜像服务器来进行安装后续的包,速度和成功率会高很多.  ...

  8. 在vue2.x中安装sass并配置

    在vue中安装sass先检查系统中有没有安装sass,在命令行中输入 sass -v 表示sass在电脑中已有,否者可以参考我这篇博客安装Sass遇到的坑 一.先安装sass cmd打开命令行,到项目 ...

  9. Sass安装与Webstorm File Watcher配置

    一.Sass安装 ruby安装 mac系统默认安装了ruby,可以直接跳过此步骤,linux和windows需要安装ruby环境. windows安装ruby环境: 到ruby官网下载自己系统适用的版 ...

随机推荐

  1. 不依赖Python第三方库实现梯度下降

    认识 梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模), 我感觉, 其实就是偏导数向量方向 ...

  2. 面试中的nginx高可用高并发!

    本文转自:91博客:原文地址:http://www.9191boke.com/439923471.html 面试题: nginx高可用?nginx 是如何实现并发的?为什么nginx不使用多线程?ng ...

  3. Thinkphp 配置不用输入index.php

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u011186019/article/det ...

  4. Hbase架构与原理(转)

    Hbase架构与原理 HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利 ...

  5. beta版本——第五次冲刺

    第五次冲刺 (1)SCRUM部分☁️ 成员描述: 姓名 李星晨 完成了哪个任务 界面优化 花了多少时间 2h 还剩余多少时间 2h 遇到什么困难 没有 这两天解决的进度 2/2 后续两天的计划 完成文 ...

  6. php中array的常用操作示码

    融会了,也就熟悉了. 这事得多练,多改. <?php $empty1 = []; $empty2 = array(); $names = ['Harry', 'Ron', 'Hermione'] ...

  7. poj3974 Palindrome(Manacher最长回文)

    之前用字符串hash+二分过了,今天刚看了manacher拿来试一试. 这manacher也快太多了%%% #include <iostream> #include <cstring ...

  8. BZOJ1123 [POI2008]BLO(割点判断 + 点双联通缩点size)

    #include <iostream> #include <cstring> #include <cstdio> using namespace std; type ...

  9. el-table 多列显示隐藏造成内容错乱

  10. Git的工作流程

    git的工作流程为: 克隆Git资源作为工作目录 在克隆的资源上添加或者修改文件 如果别人修改了,你可以更新资源 在提交前查看修改 提交修改 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交 ...