我在项目中是这样用 gulp-sass的

一直想用sass来着,可是懒癌症一直犯病。趁着最近事情不多,所以就把配置文件写好,毕竟这是能够提高工作效率的事情,早点处理好早点用上。

因为项目有点大,样式文件很多。如果全部重构是一件非常费心费力的事,并且一不小心改错了把文件覆盖,线上页面很有可能受影响。

所以考虑再三,旧的项目继续正常维护,不再用sass重构。有新的需求再用sass来写,这样既不影响线上页面,也让后来接手的新同事能快速上手。

新的目录结构是这样了:

wxstyle是总目录与gulpfile.js存放在根目录,把PC端和移动端单独分开。(因为用的是sass,所以目前 只讲css文件的分类,img和js不在这里分享了)其中scss是文件编译前放的目录,release是文件编译后存放的目录。

既然目录建好了,就该写配置文件了。

在此之前需要先安装好gulpgulp-sass插件,gulp使用方法:http://www.gulpjs.com.cn/docs/getting-started/

需要注意的是,在项目根目录下创建一个名为 gulpfile.js 的文件:

‘use strict‘;

var gulp = require(‘gulp‘),
    gulpScss = require(‘gulp-sass‘);
    gulpMinifycss = require(‘gulp-minify-css‘);

//编译后存放目录
var path = {
    scss: ‘wxgulp/mobile/v1/css/‘
}

// 监听scss样式文件
gulp.task(‘scss-monitor‘, function() {

        gulp.src( path.scss + ‘common/scss/*.scss‘)
        .pipe( gulpScss().on(‘error‘, gulpScss.logError) )
        .pipe( gulp.dest( path.scss + ‘common‘) );

        gulp.src( path.scss + ‘topic/scss/*.scss‘)
        .pipe( gulpScss().on(‘error‘, gulpScss.logError) )
        .pipe( gulp.dest( path.scss + ‘topic‘) )
});

gulp.task(‘scss-watch‘, function() {
    gulp.watch(‘wxgulp/**/*.scss‘,[‘scss-monitor‘]);
});

//默认执行以下任务:
gulp.task(‘default‘,[‘scss-watch‘]);

这时候可以在命令行中输入‘ gulp ‘,运行gulp了。以上代码关于gulp的用法就不详解啦,因为网上有很多介绍,再不然看看安装下来的gulp里面的README文件就好了,里面的用法介绍非常详细。

嗯,运行在意料之中,编译后的文件也存放在指定的目录下了。

等等,感觉有点不大对。。。

如果分类的比较细,目录比较多的情况下,那配置文件里的配置地址不是也要分别写,而且需要不断地增加才行?这可是增加维护难度呀,如下:

这样的做法不大科学,得改。。。

考虑到编译后的css不经常看,可以与图片或者js布置到线上直接用,所以可以考虑放到大目录下面。

与第一个结构图不一样,编译前和编译后的文件分开存放在两个大目录中。wxgulp存放的是编译前的文件,release存放的是编译后的文件。如此一来,配置目录也简单多了:

监控所有在wxgulp目录下的scss文件,编译后直接存放在release大目录下。以后无论增加多少文件目录都不需要改动配置文件了。

时间: 2025-01-20 03:16:09

我在项目中是这样用 gulp-sass的的相关文章

在Visual Studio 2015的Cordova项目中使用Gulp

之前一直是在vs 2013中使用Cordova来开发移动app(目前有iPad版/iPhone版/安卓版),准备到下一个milestone的时候升级到2015,这两天在尝试各种东西. 2015中的cordova项目和2013结构变化很大,所以需要一个手动迁移过程,这个过程之前已经有同事尝试过了,包括很多插件可能都要重新安装,不同插件的使用可能还有些不太一样. 这两天在研究如何在项目里使用gulp这个前端集成工具,vs 2015支持这个东西是一个非常大的利好,之前很多事情现在都可以自动来做了. g

如何在NodeJS项目中优雅的使用ES6

如何在NodeJS项目中优雅的使用ES6 NodeJs最近的版本都开始支持ES6(ES2015)的新特性了,设置已经支持了async/await这样的更高级的特性.只是在使用的时候需要在node后面加上参数:--harmony.但是,即使如此node也还是没有支持全部的ES6特性.所以这个时候就需要用到Babel了. 现在开始Babel 在开始使用Babel之前,假设 1. 你已经安装了nodejs,并且已经熟悉了Js. 2. 你也可以使用npm安装各种依赖包. 3. 而且你也对ES6(后来改为

你都做过什么项目呢?具体聊某一个项目中运用的技术.

注意:用心找自己做的项目中自己感觉最拿出来手的(复杂度最高,用的技术最多的项目),描述的时候尽可能往里面添加一些技术名词布局我们用html5+css3我们会用reset.css重置浏览器的默认样式JS框架的话我们选用的是jQuery(也可能是Zepto)我们用版本控制工具git来协同开发我们会基于gulp搭建的前端自动化工程来开发(里面包含有我们的项目结构.我们需要引用的第三方库等一些信息,我们还实现了sass编译.CSS3加前缀等的自动化)我们的项目中还用到了表单验证validate插件.图片

用java写一个远程视频监控系统,实时监控(类似直播)我想用RPT协议,不知道怎么把RPT协议集成到项目中

我最近在用java写一个远程视频监控系统,实时监控(类似直播)我想用RPT协议,不知道怎么把RPT协议集成到项目中,第一次写项目,写过这类项目的多多提意见,哪方面的意见都行,有代码或者demo的求赏给我,谢谢

DotNet项目中的一些常用验证操作

在项目中需要对用户输入的信息,以及一些方法生成的结果进行验证,一般在项目中较多的采用js插件或js来进行有关信息的校验,但是从项目安全性的角度进行考虑,可对系统进行js注入. 如果在后台对用户输入的信息进行验证会相对的安全,在出现信息验证不合法时,可以直接在程序中抛出异常,终止程序的运行. 现在提供几种较为常用的验证方法,可以减少在项目中开发时间和错误性: 1.判断域名:         /// <summary>         /// 普通的域名         /// </summ

javaWeb项目中如何实现在线查看pdf文件

最近有需求要实现在网页直接查看pdf,word,excel文件.但是实际当中并没有很好的开源插件供我们使用,确实有一些付费的插件不错,也很好用,但是对于我来说都不适合. 现在只是单纯的找到了围魏救赵的方法. 就是先实现显示pdf文件,其他文件用别的方式去转成pdf.虽然这个方法确实不好,但是也是没有办法的办法了,如果以后能有更好的,那就再发布别的吧. 这里我就直接介绍pdf的显示方法. 直接上干货. 首先在E:\tomcat8\webapps这个目录下面拷贝下面这个文件 http://yunpa

Python+Selenium进行UI自动化测试项目中,常用的小技巧2:读取配置文件(configparser,.ini文件)

在自动化测试项目中,可能会碰到一些经常使用的但 很少变化的配置信息,下面就来介绍使用configparser来读取配置信息config.ini 读取的信息(config.ini)如下: [config]platformName=AndroidappPackage=com.sheinsideappActivity=.module.GuideActivitybaseUrl=http://0.0.0.0:4723/wd/hubfindElementTimes=10[cmd]openAppium=nod

团队项目中个人的定位及计划

我们团队在这一次的移动APP开发计划中准备做一个针对上海地区大学分数线进行专业推荐的APP,根据前几章的学习,团队中的成员将会被初步分为开发人员.测试人员以及PM(program manager).我在这次的软件开发中担任开发人员的职务. 在开发开始的阶段,全员首先一起明确这次APP的主题,一起分析好这款APP将要实现怎样的功能,将要面向哪些受众:对于市面上的同类软件,我们还能添加哪些实用的功能.首先将会尽可能地将上海地区内高校近几年的分数线.每个系的最低录取分数统计好录入系统中,再根据考生相应

160504项目中的error

在学习时,曾经遇到将同组的项目导入时出现红叉的情况.但是没有发现具体错误.开始以为是build path 的问题,于是在Libraries中将相关Jar包重新检查并添加了一遍,但并没有解决问题.后来仔细检查后才发现,是一个很简单的问题,之前都想复杂了.JDK版本不一样,把JDK7换掉重新装JDK8,再把相关配置好,红叉就解决大半. 作为菜鸟程序员,有时候一个很小的问题就能造成很大影响.而经验不足时,更不知道从何入手.为了能顺利编写项目,更为了能在编写项目时能解决出现的问题和错误而不是不知所措,就

准备在新项目中使用pgsql

pgsql大象数据库 是我最近在关注的一款开源数据库,可以自由修改,没那么多限制,准备在新项目中使用 http://blog.163.com/[email protected]/blog/static/16387704020141229159715/