博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
续Gulp使用入门编译Sass
阅读量:7207 次
发布时间:2019-06-29

本文共 3951 字,大约阅读时间需要 13 分钟。

使用 gulp 编译 Sass

Sass 是一种 CSS 的开发工具,提供了许多便利的写法,大大节省了开发者的时间,使得 CSS 的开发,变得简单和可维护。

安装

npm install gulp-sass (--save-dev) 括号中的可选

基本用法

Something like this will compile your Sass files:

'use strict';

var gulp = require('gulp');

var sass = require('gulp-sass');

gulp.task('sass', function () {

return gulp.src('./sass/**/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest('./css'));
});

gulp.task('sass:watch', function () {

gulp.watch('./sass/**/*.scss', ['sass']);
});

这里说下sass({outputStyle: 'compressed'})方法里面有四种编译输出形式可以配置

  • nested 继承
  • compact 紧凑
  • expanded 展开
  • compressed 压缩

:nested

.widget-social {
text-align: right; } .widget-social a, .widget-social a:visited {
padding: 0 3px; color: #222222; color: rgba(34, 34, 34, 0.77); } .widget-social a:hover {
color: #B00909; }

:expanded

.widget-social {
text-align: right;}.widget-social a,.widget-social a:visited {
padding: 0 3px; color: #222222; color: rgba(34, 34, 34, 0.77);}.widget-social a:hover {
color: #B00909;}

:compact

.widget-social {
text-align: right; }.widget-social a, .widget-social a:visited {
padding: 0 3px; color: #222222; color: rgba(34, 34, 34, 0.77); }.widget-social a:hover {
color: #B00909; }

:compressed

.widget-social{
text-align:right}.widget-social a,.widget-social a:visited{
padding:0 3px;color:#222222;color:rgba(34,34,34,0.77)}.widget-social a:hover{
color:#B00909}
 

You can also compile synchronously, doing something like this:

'use strict';

var gulp = require('gulp');

var sass = require('gulp-sass');

gulp.task('sass', function () {

return gulp.src('./sass/**/*.scss')
.pipe(sass.sync().on('error', sass.logError))
.pipe(gulp.dest('./css'));
});

gulp.task('sass:watch', function () {

gulp.watch('./sass/**/*.scss', ['sass']);
});

Options

Pass in options just like you would for node-sass; they will be passed along just as if you were using node-sass. Except for the data option which is used by gulp-sass internally. Using the file option is also unsupported and results in undefined behaviour that may change without notice.

For example:

gulp.task('sass', function () {

return gulp.src('./sass/**/*.scss')
.pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError))
.pipe(gulp.dest('./css'));
});
Source Maps

gulp-sass can be used in tandem with gulp-sourcemaps to generate source maps for the Sass to CSS compilation. You will need to initialize gulp-sourcemaps prior to running gulp-sass and write the source maps after.

var sourcemaps = require('gulp-sourcemaps');

gulp.task('sass', function () {

return gulp.src('./sass/**/*.scss')
.pipe(sourcemaps.init())
.pipe(sass().on('error', sass.logError))
.pipe(sourcemaps.write())
.pipe(gulp.dest('./css'));
});
By default, gulp-sourcemaps writes the source maps inline in the compiled CSS files. To write them to a separate file, specify a path relative to the gulp.dest() destination in the sourcemaps.write() function.

var sourcemaps = require('gulp-sourcemaps');

gulp.task('sass', function () {
return gulp.src('./sass/**/*.scss')
.pipe(sourcemaps.init())
.pipe(sass().on('error', sass.logError))
.pipe(sourcemaps.write('./maps'))
.pipe(gulp.dest('./css'));
});

最后运行gulp 命令

gulp

[11:32:24] Using gulpfile D:\wamp\www\BootsDataTable\gulpfile.js
[11:32:24] Starting 'script'...
[11:32:24] Finished 'script' after 16 ms
[11:32:24] Starting 'css'...
[11:32:24] Finished 'css' after 3.66 ms
[11:32:24] Starting 'images'...
[11:32:24] Finished 'images' after 1.9 ms
[11:32:24] Starting 'sass'...
[11:32:24] Starting 'auto'...
[11:32:25] Finished 'auto' after 58 ms
[11:32:25] Starting 'css'...
[11:32:25] Finished 'css' after 4.39 ms
[11:32:25] Finished 'sass' after 318 ms
[11:32:25] Starting 'default'...
[11:32:25] Finished 'default' after 22 μs
[11:32:25] Starting 'css'...
[11:32:25] Finished 'css' after 1.45 ms
[11:32:25] gulp-imagemin: Minified 20 images (saved 12.48 kB - 24.2%)

 

转载于:https://www.cnblogs.com/thomaspha/p/5884574.html

你可能感兴趣的文章
基于jQuery商城网站全屏图片切换代码
查看>>
Android开发之注解式框架ButterKnife在ADT中的设置
查看>>
JAVA学习篇--Java类加载
查看>>
如何清空android ListView控件的内容
查看>>
配置SELINUX
查看>>
EF里一对一、一对多、多对多关系的配置和级联删除
查看>>
linux svn启动和关闭(转)
查看>>
Hadoop序列化与Java序列化
查看>>
Java Machine Learning Tools & Libraries--转载
查看>>
BZOJ 1199: [HNOI2005]汤姆的游戏 计算几何暴力
查看>>
spring mvc 请求转发和重定向
查看>>
PID控制器(比例-积分-微分控制器)- II
查看>>
android.graphics包中的一些类的使用
查看>>
将Ojective-C代码移植转换为Swift代码
查看>>
C#控制台程序取得INSOYA视频区的视频的真实URL,视频标题,发布时间集合。
查看>>
从控制台读取password - C#
查看>>
高通公司 MSM8K GPT异常原因分析无法开机的问题
查看>>
Android 升级下载 它们的定义Updates 兼容版本
查看>>
webstorm 10.0.4 注册码
查看>>
跨平台开源通讯组件elastic communication
查看>>