Tôi đã chọn trình triển khai node-sass cho libsass vì nó dựa trên node.js.
Cài đặt node-sass
- (Điều kiện tiên quyết) Nếu bạn không có npm, hãy cài đặt Node.js trước.
$ npm install -g node-sass
cài đặt node-sass trên toàn cầu -g
.
Điều này hy vọng sẽ cài đặt tất cả những gì bạn cần, nếu không đọc libsass ở dưới cùng.
Cách sử dụng node-sass từ dòng lệnh và tập lệnh npm
Định dạng chung:
$ node-sass [options] <input.scss> [output.css]
$ cat <input.scss> | node-sass > output.css
Ví dụ:
$ node-sass my-styles.scss my-styles.css
biên dịch một tệp theo cách thủ công.
$ node-sass my-sass-folder/ -o my-css-folder/
biên dịch tất cả các tệp trong một thư mục theo cách thủ công.
$ node-sass -w sass/ -o css/
tự động biên dịch tất cả các tệp trong một thư mục bất cứ khi nào (các) tệp nguồn được sửa đổi. -w
thêm theo dõi các thay đổi đối với (các) tệp.
Các tùy chọn hữu ích khác như 'nén' @ tại đây . Dòng lệnh là một giải pháp nhanh, tuy nhiên, bạn có thể sử dụng các trình chạy tác vụ như Grunt.js hoặc Gulp.js để tự động hóa quá trình xây dựng.
Bạn cũng có thể thêm các ví dụ trên vào các tập lệnh npm. Để sử dụng đúng cách các tập lệnh npm như một giải pháp thay thế cho gulp, hãy đọc bài viết toàn diện này @ css-tricks.com, đặc biệt là đọc về các tác vụ nhóm .
- Nếu không có
package.json
tệp nào trong thư mục dự án của bạn đang chạy $ npm init
sẽ tạo một tệp . Sử dụng nó với -y
để bỏ qua các câu hỏi.
- Thêm
"sass": "node-sass -w sass/ -o css/"
vào scripts
trong package.json
tệp. Nó sẽ trông giống như sau:
"scripts": {
"test" : "bla bla bla",
"sass": "node-sass -w sass/ -o css/"
}
$ npm run sass
sẽ biên dịch các tệp của bạn.
Cách sử dụng với gulp
$ npm install -g gulp
cài đặt Gulp trên toàn cầu.
- Nếu không có
package.json
tệp nào trong thư mục dự án của bạn đang chạy $ npm init
sẽ tạo một tệp . Sử dụng nó với -y
để bỏ qua các câu hỏi.
$ npm install --save-dev gulp
cài đặt Gulp cục bộ. --save-dev
thêm gulp
vào devDependencies
trong package.json
.
$ npm install gulp-sass --save-dev
cài đặt cục bộ gulp-sass.
- Thiết lập gulp cho dự án của bạn bằng cách tạo một
gulpfile.js
tệp trong thư mục gốc dự án của bạn với nội dung sau:
'use strict';
var gulp = require('gulp');
Một ví dụ cơ bản để vận chuyển
Thêm mã này vào gulpfile.js của bạn:
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
chạy tác vụ trên để biên dịch (các) tệp .scss trong sass
thư mục và tạo (các) tệp .css trong css
thư mục.
Để làm cho cuộc sống dễ dàng hơn, hãy thêm một chiếc đồng hồ để không phải biên dịch nó theo cách thủ công. Thêm mã này vào gulpfile.js
:
gulp.task('sass:watch', function () {
gulp.watch('./sass/**/*.scss', ['sass']);
});
Tất cả đã được thiết lập ngay bây giờ! Chỉ cần chạy tác vụ đồng hồ:
$ gulp sass:watch
Cách sử dụng với Node.js
Như tên của node-sass ngụ ý, bạn có thể viết các tập lệnh node.js của riêng mình để chuyển ngữ. Nếu bạn tò mò, hãy xem trang dự án node-sass.
Còn về libsass?
Libsass là một thư viện cần được xây dựng bởi một người triển khai như sassC hoặc trong trường hợp của chúng ta là node-sass. Node-sass chứa một phiên bản libsass được xây dựng mà nó sử dụng theo mặc định. Nếu tệp xây dựng không hoạt động trên máy của bạn, nó sẽ cố gắng tạo libsass cho máy của bạn. Quá trình này yêu cầu Python 2.7.x (3.x không hoạt động kể từ hôm nay). Ngoài ra:
LibSass yêu cầu GCC 4.6+ hoặc Clang / LLVM. Nếu hệ điều hành của bạn cũ hơn, phiên bản này có thể không biên dịch. Trên Windows, bạn cần MinGW với GCC 4.6+ hoặc VS 2013 Update 4+. Cũng có thể xây dựng LibSass với Clang / LLVM trên Windows.
node-sass
làgulp-sass
phụ thuộc của , vì vậy không cần phải cài đặt nó cục bộ.