nodejs利用sass框架监听项目自动生成css文件教程

以前弄scss只能在ruby下面, nodejs版less.js已经比较成熟, 而sass.js(1)不支持scss(后面作者又去开发Stylus了~), 后面出现的scss-js(2)已经错过时机(支持scss语法有限, 已很久没更新了).
这大概是导致目前less在国内爆发的一个原因吧. 排除环境依赖影响, 个人感觉sass比less好很多, 相信不少同学也这样认为~
对比了目前的4种css预处理语法: sass(scss)/less/stylus/closure-stylesheets, 还是更喜欢scss.

用nodejs写小工具蛮适合的, 但之前苦于sass在nodejs下没有比较好的package. 终于node-sass(3)出现, 目前npm里最好的sass package, 测试了一些scss文件基本都OK, 语法有误时也会返回错误信息.

基于node-sass写了个小工具, 监听项目目录, 当文件夹里的.scss文件被修改则立即编译成css文件, 使用:
1. sudo /path/scss.js # 载入已写好的配置, 侦听多个项目;
推荐这种方法, 把多个项目的配置信息写到 scssConfig.js中, 不需要额外的参数.
2. sudo /path/scss.js -build # 读取所有的.scss并编译成.css文件;
3. sudo /path/scss.js -clear # 清除错误日志(如果配置了 scssConfig.js里logDir的路径);
4. sudo /path/scss.js /path/project1/ /path/lib/ # 临时监听project1目录, lib为.scss里@import的path(无@import,可以省略);

源码放在: https://github.com/kairyou/f2e-tools/tree/master/scss

附送使用node-sass时遇到的问题以及解决方法:
1. error reading values after :
读取value出错, 可能是颜色错误不是6位或3位, 比如:color:#abcde;
2. .scss里面写: @charset "UTF-8"; 会报错: top-level blockless directive must be terminated by ';'
@see: https://github.com/andrew/node-sass/issues/23
3. error reading values after opacity / progid
使用: unquote("..."); @see: https://github.com/hcatlin/libsass/issues/72

文中提到的sass几个package的link:
1) sass: https://github.com/visionmedia/sass.js
2) scss: https://github.com/bmavity/scss-js
3) node-sass: https://github.com/andrew/node-sass

有了nodejs版, 其他语言(非ruby), 比如PHP的phpsass/scssphp等就可以忽略了~

时间: 2024-09-22 12:51:53

nodejs利用sass框架监听项目自动生成css文件教程的相关文章

MyBatis框架之mybatis逆向工程自动生成代码_java

Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成文件. 逆向工程 1.什么是逆向工程 mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper.xml.po..) 企业实际开发中,常用的逆向工程方式: 由于数据库的表生成java代码. 2.下载逆向工程 my

为 Python 项目自动生成的依赖文件 Pigar

Pigar 详细介绍 Pigar 是为 Python 项目自动生成精确无误的依赖文件. 用 pip 安装: $ [sudo] pip install pigar pigar 能找区别不同 Python 版本之间的差异,非常精确,并找出依赖包在代码中的哪些位置引用了,这非常方便,可以发现某些无用却引用了的包: $ pigar # example/e1.py: 18 pkg_a == 3.3.3 # example/e2.py: 10 pkg_b == 1.1.1 如果你折腾别人的项目的时候遇到"I

【MyBatis框架】mybatis逆向工程自动生成代码

逆向工程 1.什么是逆向工程 mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper.xml.po..) 企业实际开发中,常用的逆向工程方式: 由于数据库的表生成java代码. 2.下载逆向工程mybatis-generator-core-1.3.2-bundle.zip 3.使用方法(会用) 3.1运行逆向工程  官方文档中提供的运行逆向工程的几种方法 Running MyBatis

Makefile自动生成头文件依赖

前言 Makefile自动生成头文件依赖是很常用的功能,本文的目的是想尽量详细说明其中的原理和过程. Makefile模板 首先给出一个本人在小项目中常用的Makefile模板,支持自动生成头文件依赖. CC = gcc CFLAGS = -Wall -O INCLUDEFLAGS = LDFLAGS = OBJS = seq.o TARGETS = test_seq .PHONY:all all : $(TARGETS) test_seq:test_seq.o $(OBJS) $(CC) -o

android ndk adt自动生成头文件问题。

问题描述 android ndk adt自动生成头文件问题. android ndk adt自动生成头文件时候,在项目src目录下打开cmd.运行javah加adt复制的方法包名,为什么提示找不到com.zhhd.simplejni.MainActivity的类文件.在bin/classes也不行.怎么办,卡在这么个地方太闹心了 解决方案 javah -classpath . -jni 这里点表示当前路径.

Wix 安装部署(一)同MSBuild 自动生成打包文件

原文:Wix 安装部署(一)同MSBuild 自动生成打包文件       因为项目需要,最近在研究Wix打包部署,园子里也有一些关于wix的博客,方方面面,讲的点各不同.我自己也在测试过程中,写下过程,以供参考.最新版本WiX Toolset v3.7,如何安装的就不说了,可以参考 http://blog.csdn.net/rryqsh/article/details/8274832         打包关心的问题有 1).Net版本检查  2)桌面和菜单栏的快捷方式 3)更换图标画面,进度条

myeclipse 2014创建动态网站的时候不能自动生成 xml文件,是需要自己创建一个吗?

问题描述 myeclipse 2014创建动态网站的时候不能自动生成 xml文件,是需要自己创建一个吗? 2013就会自动生成..xml文件是必要的吗...书上说用 myeclipse可以不用管xml,可是那用什么路径访问啊 解决方案 一般创建web工程后会自动创建web.xml的;如果没有的话,在创建web项目时有个窗口有个生成web.xml的项你要勾选上才会生成这个的; 如果还是没有的话,就手动在目录下创建一个就行了: 如果回答对您有帮助,请采纳 解决方案二: 解决方案三: web.xml对

程序自动生成Dump文件

前言:通过drwtsn32.NTSD.CDB等调试工具生成Dump文件, drwtsn32存在的缺点虽然NTSD.CDB可以完全解决,但并不是所有的操作系统中都安装了NTSD.CDB等调试工具.了解了mini dump文件格式后,完全可以程序自动生成Dump文件. 本文主要讨论以下内容: 1.  运行原理 2.  程序修改 3.  注意事项 一.   运行原理 当程序遇到未处理异常(主要指非指针造成)导致程序崩溃死,如果在异常发生之前调用了SetUnhandledExceptionFilter(

make自动生成依赖文件的两种形式

最近编译源文件发现当修改头文件后,make并不会自动把包含此头文件的所有源文件重新编译,而每次都是需要把对应的中间文件清除才能重新编译,非常的麻烦.因此需要make自动对源文件所依赖的头文件进行管理,即make自动生成依赖文件.鉴于本人的刚开始写的博客,很多方面经验不足,比如如何介绍我所用到的知识等,现在只是对我在过程中遇到的问题进行记录,相关的知识可以查看gnu make中文文档,上网等等. 遇到的问题记录如下:1.make在生成依赖文件后并不正确:原因是生成的依赖文件中的目标文件(.d与.o