我为 libsass 选择了 node-sass 实现器,因为它基于 node.js。
安装node-sass
- (前提)如果你没有npm,请安装Node.js https://nodejs.org/ first.
-
$ npm install -g node-sass
全局安装node-sass-g
.
如果没有阅读底部的 libsass,这将有望安装您需要的所有内容。
如何从命令行和 npm 脚本使用 node-sass
通用格式:
$ node-sass [options] <input.scss> [output.css]
$ cat <input.scss> | node-sass > output.css
例子:
-
$ node-sass my-styles.scss my-styles.css
手动编译单个文件。
-
$ node-sass my-sass-folder/ -o my-css-folder/
手动编译文件夹中的所有文件。
-
$ node-sass -w sass/ -o css/
每当修改源文件时,都会自动编译文件夹中的所有文件。-w
添加对文件更改的监视。
更有用的选项,例如“压缩”@ here https://github.com/sass/node-sass#command-line-interface。命令行非常适合快速解决方案,但是,您可以使用 Grunt.js 或 Gulp.js 等任务运行器来自动化构建过程。
您还可以将上述示例添加到 npm 脚本中。正确使用 npm 脚本作为吞咽的替代品 read 这篇综合文章@css-tricks.com https://css-tricks.com/why-npm-scripts/特别是阅读关于分组任务 https://css-tricks.com/why-npm-scripts/#article-header-id-11.
- 如果没有
package.json
文件在你的项目目录中运行$ npm init
将创建一个。与它一起使用-y
跳过问题。
- Add
"sass": "node-sass -w sass/ -o css/"
to scripts
in package.json
文件。它应该看起来像这样:
"scripts": {
"test" : "bla bla bla",
"sass": "node-sass -w sass/ -o css/"
}
如何与 gulp 一起使用
-
$ npm install -g gulp
全局安装 Gulp。
- 如果没有
package.json
文件在你的项目目录中运行$ npm init
将创建一个。与它一起使用-y
跳过问题。
-
$ npm install --save-dev gulp
本地安装 Gulp。--save-dev
adds gulp
to devDependencies
in package.json
.
-
$ npm install gulp-sass --save-dev
在本地安装 gulp-sass。
- 通过创建一个来为您的项目设置 gulp
gulpfile.js
项目根文件夹中的文件包含以下内容:
'use strict';
var gulp = require('gulp');
一个基本的转译示例
将此代码添加到您的 gulpfile.js 中:
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('sass', function () {
gulp.src('./sass/**/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest('./css'));
});
$ gulp sass
运行上述任务,编译 .scss 文件sass
文件夹并在其中生成 .css 文件css
folder.
为了让生活更轻松,让我们添加一个手表,这样我们就不必手动编译它。将此代码添加到您的gulpfile.js
:
gulp.task('sass:watch', function () {
gulp.watch('./sass/**/*.scss', ['sass']);
});
现在一切都准备好了!只需运行监视任务:
$ gulp sass:watch
如何与 Node.js 一起使用
正如node-sass 的名称所暗示的,您可以编写自己的node.js 脚本进行转译。如果您好奇,请查看 node-sass 项目页面。
那么 libsass 呢?
Libsass 是一个需要由 sassC 或在我们的例子中的 node-sass 等实现者构建的库。 Node-sass 包含默认使用的 libsass 的构建版本。如果构建文件无法在您的计算机上运行,它会尝试为您的计算机构建 libsass。此过程需要 Python 2.7.x(3.x 目前无法运行)。此外:
LibSass 需要 GCC 4.6+ 或 Clang/LLVM。如果您的操作系统较旧,则此版本可能无法编译。在 Windows 上,您需要带有 GCC 4.6+ 或 VS 2013 Update 4+ 的 MinGW。还可以在 Windows 上使用 Clang/LLVM 构建 LibSass。