DANH MỤC TÀI LIỆU
Gulp cho người mới bắt đầu
Gulp cho ng i m i b t đ uườ ớ ắ
Gulp là gì?
Gulp là m t công c giúp b n t đ ng hóa nhi u task (nhi m v ) trong quá ự ộ
trình phát tri n web. Nó th ng đ c s d ng đ làm các tác v front end ườ ượ ử ụ
nh :ư
T o ra m t web serverạ ộ
Reload trình duy t m t cách t đ ng b t c khi nào m t file đ c ự ộ ượ
l uư
S d ng các preprocessor gi ng nh Sass ho c LESSử ụ ư
T i u hóa các tài nguyên nh CSS, JavaScript và hình nhố ư ư
Đây không ph i là m t danh sách toàn di n v nh ng th mà Gulp có th ệ ề ữ
làm. N u mu n, b n có th t o m t generator web site tĩnh.ế ể ạ Gulp c c kỳ
m nh m , nh ng b n c n h c cách s d ng Gulp n u mu n t o ra m t ư ử ụ ế
quá trình (process) c a riêng mình.
Bài vi t này s giúp b n có nh ng ki n th c c b n v Gulp sau đó b nế ế ơ ả
th t nh khám phá m i th .ể ự
Tr c khi đi sâu vào Gulp, hãy nói v lý doướ t i sao b n s d ng Gulp mà ử ụ
không ph i các công c khác.ả ụ
T i sao l i là Gulp?ạ ạ
Nh ng công c nh Gulp th ng đ c đ c p nh là "build tools" b i vì ư ườ ượ ề ậ ư
chúng là nh ng công c th c hi n các task trong quá trình xây d ng m t ụ ự
website. Hai build tools ph bi n nh t hi n gi là Gulp và Grunt. T t nhiên,ổ ế
v n có nh ng công c khác ch ng h n nh ẳ ạ ư Broccoli, Brunch.
Có nhi u bài vi t đ c p t i s khác nhau gi a Grunt và Gulp và lý do t i ế ề ậ
sao b n l i s d ng công c này mà không ph i là các công c khác. ử ụ
Nh ng đi m khác bi t chính là cách b n c u hình m t workflow v i chúng.ư ạ ấ
Gulp c u hình ng n h n và đ n gi n h n khi so sánh v i Grunt. Gulp cũng ắ ơ ơ ả ơ
ch y nhanh h n.ạ ơ
Cái chúng ta s làm
Khi k t thúc bài vi t này, b n s có m t workflow th c hi n các task sau:ế ế ạ ẽ
T o ra m t web serverạ ộ
Biên d ch Sass thành CSS
Refesh trình duy t t đ ng b t c khi nào b n l u m t file ự ộ ư
T i u hóa các tài nguyên (CSS, JS, fonts, và hình nh) cho phiên ố ư
b n production
B n cũng s h c cách n i m t chu i các task khác nhau vào m t l nh đ n ệ ơ
gi n.
Hãy b t đ u b ng cách cài đ t Gulp trên máy tính c a b n.ắ ầ
Cài đ t Gulp
B n c n cài đ t Node.js tr c khi có th cài đ tướ Gulp.
Sau khi đã cài đ t Node, b n có th cài đ t Gulp b ng cách s d ng l nh ử ụ
sau:
$ sudo npm install gulp -g
Chú ý: ch nh ng ng i s d ng Mac m i c n s d ng t khóa ườ ử ụ ử ụ sudo
npm install là l nh s d ng Node Package Manager ử ụ (npm) đ cài đ t Gulp ể ặ
trên máy tính c a b n.ủ ạ
C -g trong l nh này nói v i npm cài Gulp v i ph m vi toàn c c trên máy ớ ạ
tính c a b n, nó cho phép s d ng l nh ử ụ gulp b t kỳ đâu trên h th ng ở ấ
c a b n.ủ ạ
Bây gi Gulp đã đ c cài đ t, hãy t o ra m t d án s d ng Gulp. ượ ử ụ
T o m t Gulp projectạ ộ
Đ u tiên, chúng ta s t o ra m t th m c ư project. Đây s là th m c g c ư ụ
c a d án. Di chuy n vào th m c ư project và ch y l nh npm init:
# ... from within our project folder
$ npm init
L nh npm init s t o ra m t fileẽ ạ package.json l u tr các thông tin v ư ữ
project, nh cácư dependencies đ c s d ng trong d án (Gulp là m t ượ ử ụ
dependency).
npm init s yêu c u b n xác nh n: ầ ạ
Khi file package.json đã đ c t o, chúng ta có th cài đ t Gulp vào d án ượ ạ
b ng cách s d ng l nh: ử ụ
$ npm install gulp --save-dev
L nh này s cài đ t Gulp vào project c a b n thay vì cài đ t toàn c c. ủ ạ
C --save-dev s thêm gulp nh m t dev dependency trongư ộ package.json.
N u ki m tra th m cế ư project khi l nh đã th c thi xong, b n s th y có ẽ ấ
thêm th m cư node_modules. B n cũng nhìn th y th ấ ư
m c gulptrong node_modules.
Chúng ta g n nh đã s n sàng đ b t đ u làm vi c v i Gulp. Nh ng tr c ư ể ắ ư ướ
khi làm đi u đó, chúng ta c n xác đ nh cách chúng ta s d ng Gulp cho ử ụ
project, và m t ph n trong đó là ch n m t c u trúc th m c. ộ ấ ư
Ch n c u trúc th m c ư ụ
Gulp đ linh ho t đ làm vi c v i m i c u trúc th m c. Trong bài vi t ọ ấ ư ế
này, chúng ta s s d ng m t c u trúc th ng th y:ẽ ử ườ
|- app/
|- css/
|- fonts/
|- images/
|- index.html
|- js/
|- scss/
|- dist/
|- gulpfile.js
|- node_modules/
|- package.json
Trong c u trúc này, chúng ta s s d ng th m c ư app cho m c đích phát
tri n, trong khi th m c ư dist (distribution) đ c s d ng đ ch a các file ượ ử ụ
đã đ c t i u cho web site production.ượ ố ư
Bây gi , hãy b t đ u b ng cách t o ra Gulp task đ u tiên c a b n ắ ầ
trong gulpfile.js, cái l u tr t t c c u hình c a Gulp.ư ữ ấ
Vi t Gulp task đ u tiênế ầ
B c đ u tiên đ s d ng Gulp làướ ể ử require trong gulpfile.
var gulp = require('gulp');
Câu l nh require nói v i Node tìm ki m trong th ế ư
m c node_modules package có tên gulp. Khi package đ c tìm th y, chúng ượ ấ
ta gán n i dung t i bi n ế gulp.
Bây gi chúng ta có th vi t m t gulp task. Cú pháp c b n nh sau: ế ơ ả ư
gulp.task('task-name', function() {
// Stuff here
});
task-name là tên c a task, cái sủ ử d ng khi b n mu n ch y m t task trong ạ ộ
Gulp. B n cũng có th ch y task đó trong command line b ng l nh gulp
task-name.
Đ ki m tra, t o m t task ể ể hello, cái in ra "Hello Zell".
gulp.task('hello', function() {
console.log('Hello Zell');
});
Chúng ta có th ch y task v i l nh ớ ệ gulp hello.
$ gulp hello
L nh trên s in ra "Hello Zell".
Th c t , các Gulp task s ph c t p h n m t chút. Nó th ng ch a h n 2 ự ế ứ ạ ơ ườ ơ
ph ng th c Gulp, c ng v i nhi u plugin c a Gulp.ươ ộ ớ
M t task th c s s gi ng nh th này: ẽ ố ư ế
gulp.task('task-name', function () {
return gulp.src('source-files') // Get source files with gulp.src
.pipe(aGulpPlugin()) // Sends it through a gulp plugin
.pipe(gulp.dest('destination')) // Outputs the file in the destination folder
thông tin tài liệu
Gulp là một công cụ giúp bạn tự động hóa nhiều task (nhiệm vụ) trong quá trình phát triển web
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×