Grunt là gì?

1. Giới thiệu chung

Grunt là 1 trong những biện pháp loại lệnh dựa vào các task dùng để làm cung ứng các project javascript.Quý Khách sẽ xem: Nghĩa của trường đoản cú grunt

Grunt được áp dụng trong tương đối nhiều cửa hàng, dự án công trình nhỏng Twitter, Adobe, jQuery

Chúng ta có thể coi Grunt là 1 trong những khí cụ để build code tương tự như auto các task lặp đi lặp lại (task runner). Công câu hỏi của task runner rất có thể nói tới như nén, biên dịch các file css, javascript, chạy unit test.

Bạn đang xem: Grunt là gì?

Tại sao buộc phải thực hiện grunt Hệ sinh thái xanh Grunt rất to lớn với nhiều chủng loại Số lượng plugin bự, cung cấp tốt vấn đề chạy tự động hóa những task

2.Cài đặt grunt

Để thiết lập grunt thứ 1 chúng ta phải thiết lập nodejs. Hướng dẫn setup node.js cóp thể tìm hiểu thêm tại phía trên. Sau Khi cài đặt hoàn thành nodejs bài toán tiếp theo sau là thiết đặt grunt trên terminal.

npm install grunt-cli -g

Tiếp sẽ là khởi tạo ra dự án

npm init

Sau lệnh này tệp tin package.json được tạo ra nhằm lưu giữ lên tiếng của dự án với các tlỗi viện phụ thuộc.

Dưới đó là 1 file package.json sinh sống dạng siêu đơn giản

, "author": "kiểm tra author", "license": "ISC" }

Trên thực tiễn sau khi cài đặt những thư viện, package liên quan, keywords, những ràng buộc dựa vào về các phiên bản thỏng viện được áp dụng 1 tệp tin package.json hoàn hảo đã trông như vậy này

, "scripts": , "main": "lib/grunt", "keywords": , "dependencies": , "devDependencies": , "files": }

Sau lúc thông số kỹ thuật hoàn thành bọn họ cần chạy lệnh

npm install

nhằm thiết lập những plugin với module cần thiết mang đến dự án


*

3. Cấu hình grunt

Grunt sử dụng Gruntfile.js (thuộc thư mục cùng với package.json) để phát âm các thông tin cấu hình cho những task runner.

module.exports = function (grunt) , files: } }, uglify: , "ng-app-min": } }, ngAnnotate: , app1: } } }); // Register the mặc định tasks. grunt.registerTask("default", ); };

Phần require("matchdep") có trách nhiệm load toàn thể các module được knhì báo trong file package.json. Nếu không có phần này, bọn họ rất cần được load các module 1 cách bằng tay hơn bằng phương pháp sử dụng

grunt.loadNpmTasks(Module name)

Trong ví dụ trên rất có thể thấy gồm có task sau được định nghĩa

CSSmin: build với minify những file css Uglify: build và minify những tệp tin js ngAnnotate: thêm xóa các kí pháp của Angular

Trong phần tư tưởng những task, các tệp tin resource đầu vào cũng giống như file Áp sạc ra sau quá trình chạy task sẽ tiến hành chứng thật, mà còn có thêm một số tùy chọn không giống (ví như tất cả thực hiện nén file tuyệt không)

Ở phía cuối tệp tin có mang mức độ ưu tiên, thiết bị trường đoản cú thực hiện những task tại

grunt.registerTask("default", );

Các task runner sẽ được tiến hành theo như đúng vật dụng từ được knhì báo tại trên đây làm cho ra kết quả ở đầu cuối.

Xem thêm: "Thảm Cỏ Nhân Tạo Sân Vườn Trang Trí, Thảm Cỏ Giá Tốt Tháng 3,, 2021

4. Grunt vs Gulp

Giống nlỗi grunt, gulp cũng là 1 qui định để cung ứng bài toán auto hóa những task với cũng đang rất được sử dụng không hề ít. Vậy điểm biệt lập giữa grunt với gulp là gì

4.1 Cộng đồng cách tân và phát triển, người sử dụng

Grunt được cải tiến và phát triển từ bỏ sớm hơn với có được số người sử dụng nhiều hơn. Số lượt thiết lập về của Grunt là nhiều hơn nữa hẳn.

Cũng vị được cải cách và phát triển từ sớm cần grunt cung ứng những plugin hơn (4000 so với 1200 của gulp).

4.2 Tốc độ

Grunt áp dụng những tệp tin trung gian tạm thời trong quá trình biên dịch các tệp tin css và js trong lúc Gulp xử lí các thao tác kia trong bộ lưu trữ. Do đó Gulp hữu ích thế hơn hẳn vào cuộc đua vầ tốc độ.

Xem thêm: Kiểm Định Cronbach’S Alpha Là Gì, 404 Not Found

4.3 Cấu hình

Gulp là 1 trong ví dụ xuất sắc về "code over configuration", vấn đề cấu hình trong gulp đơn giản dễ dàng rộng, dễ nhìn đọc, dễ debug hơn, với file thông số kỹ thuật nđính gọn rộng.

tóm lại

Nếu mong muốn áp dụng được nhiều plugin rộng được hỗ trợ giỏi rộng chúng ta nên cần sử dụng grunt còn nếu như dự án yêu cầu ưu tiên tốc độ up load hơn cùng không từng trải quá nhiều các tlỗi viện phức hợp nên chọn lựa gulp


Chuyên mục: Blockchain