1. Giới thiệu
Apps Script CLI (hay clasp) là một công cụ cho phép bạn tạo, chỉnh sửa và triển khai các dự án Apps Script tại chỗ. Công cụ này cho phép bạn tạo và xuất bản các ứng dụng web cũng như tiện ích bổ sung cho các sản phẩm như Trang tính, Tài liệu, Biểu mẫu và Trang trình bày thông qua dòng lệnh. Có 2 cách để phát triển Apps Script, đó là sử dụng script.google.com hoặc phát triển cục bộ trên máy tính. Chúng ta sẽ tìm hiểu cách sử dụng clasp, công cụ dòng lệnh cho Apps Script.
Tính năng
- Phát triển cục bộ.
claspcho phép bạn viết mã trên máy tính của riêng mình và tải mã đó lên Apps Script khi hoàn tất. Bạn cũng có thể tải các dự án Apps Script hiện có xuống rồi chỉnh sửa chúng trên thiết bị. Sau khi mã được lưu trữ cục bộ, bạn có thể sử dụng các công cụ phát triển mà mình yêu thích (chẳng hạn như git) để làm việc trên các dự án Apps Script. - Quản lý các phiên bản triển khai. Tạo, cập nhật và xem nhiều lượt triển khai dự án của bạn.
- Mã cấu trúc.
clasptự động chuyển đổi dự án phẳng của bạn trên script.google.com thành thư mục. Ví dụ:
# On script.google.com:
├── tests/slides.gs
└── tests/sheets.gs
# Locally:
├── tests/
│ ├─ slides.gs
│ └─ sheets.gs
Kiến thức bạn sẽ học được
Lớp học lập trình này sẽ hướng dẫn bạn cách thực hiện 3 hoạt động chính bằng clasp:
- Cách tạo dự án Apps Script mới
- Cách sao chép, kéo và đẩy các dự án hiện có
- Cách quản lý việc triển khai tập lệnh
2. Bắt đầu
Tải CLI xuống
Apps Script CLI (clasp) yêu cầu bạn cài đặt Node.js. Cài đặt Node.js tại đây.
Sau khi cài đặt Node, hãy cài đặt CLI trên toàn cầu (bí danh clasp):
npm i @google/clasp -g
3. Bật API Apps Script
Để có thể sử dụng Clasp, bạn phải bật API Google Apps Script trong IDE Apps Script.
4. Đăng nhập
Đăng nhập
Hãy thử clasp! Lệnh duy nhất bạn cần nhớ là clasp.
clasp
Trước khi bắt đầu sử dụng công cụ dòng lệnh, chúng ta phải đăng nhập. Chạy lệnh này:
clasp login
hoặc nếu bạn đang dùng SSH:
clasp login --no-localhost
Tại thời điểm này, bạn sẽ được nhắc đăng nhập vào Google. Mọi dự án bạn tạo bằng CLI đều được liên kết với Tài khoản Google này.
5. Tạo dự án mới
Tạo một dự án độc lập
Bắt đầu bằng cách tạo một dự án Google Apps Script độc lập bằng lệnh sau:
mkdir clasp_codelab;
cd clasp_codelab;
clasp create --title "Clasp Codelab" --type standalone;
Bạn vừa tạo một Dự án Apps Script trong thư mục "clasp_codelab"!
(Lựa chọn thay thế không bắt buộc) Sao chép một dự án hiện có
Hãy thử tạo một tập lệnh được liên kết với vùng chứa cho một Tiện ích bổ sung của Google Trang trình bày.
Để làm việc này, hãy truy cập slides.google.com rồi tạo một bản trình bày mới. Đổi tên bản trình bày thành "clasp Codelab Test". Trong thanh trình đơn của Trang trình bày, trong trình đơn Tiện ích, hãy chọn "Apps Script.
Thao tác này sẽ mở dự án Apps Script của bạn tại script.google.com.
Tạo một thư mục mới cho dự án của bạn và cd vào thư mục đó.
mkdir clasp_codelab_test
cd clasp_codelab_test
Để sao chép một dự án, chúng ta cần Script ID. Bạn có thể tìm thấy mã này trong URL của dự án Apps Script sau /projects/. Sao chép giá trị đó rồi dán vào lệnh sau:
clasp clone <scriptID>
Kết quả đầu ra sẽ có dạng như sau...

Giờ đây, bạn đã tải dự án xuống thư mục hiện tại. Sử dụng trình chỉnh sửa mà bạn yêu thích để xem nội dung của Code.gs (một hàm trống).
6. Kéo và đẩy tệp
Chỉnh sửa mã trên script.google.com
Giờ bạn đã có thể sao chép một dự án, hãy tìm hiểu cách kéo và đẩy tệp. Chúng tôi sẽ hướng dẫn bạn các bước để chỉnh sửa trên đám mây thông qua script.google.com và kéo xuống máy tính của bạn. Hãy mở tập lệnh trên đám mây:
clasp open-script
Giờ đây, khi đang ở trình chỉnh sửa trực tuyến, chúng ta sẽ chỉnh sửa một số mã trực tuyến mà sau này chúng ta sẽ tìm nạp bằng clasp.
Để tạo một tệp Apps Script mới, ở bên trái trình chỉnh sửa, bên cạnh Tệp, hãy nhấp vào biểu tượng Thêm tệp
> Tập lệnh. Nhập tên utils/strings. Trong tệp utils/strings.gs vừa tạo, hãy thay thế mã bằng đoạn mã sau:
var world = "世界";
Trong Code.gs, hãy thay thế mã hiện có bằng mã sau:
function hello() {
Logger.log("Hello, " + world);
}
Ở trên cùng, hãy nhấp vào biểu tượng Lưu .
Để chạy hàm, ở đầu trình chỉnh sửa, hãy chọn hello trong danh sách thả xuống hàm rồi nhấp vào Chạy.
Lời chào xuất hiện ở cuối nhật ký thực thi.
Chỉnh sửa mã cục bộ
Hãy quay lại dòng lệnh nơi chúng ta nhân bản dự án lần gần đây nhất. Bạn có thể nhận thấy rằng mã của chúng ta hiện không đồng bộ với trình chỉnh sửa trực tuyến. Để khắc phục vấn đề đó, hãy kéo mã từ dự án trực tuyến của chúng ta.
clasp pull
Bây giờ, hãy quay lại mã. Bạn sẽ nhận thấy có một thư mục cho các tiện ích của chúng tôi. CLI clasp sẽ tự động chuyển đổi ký tự dấu gạch chéo / thành các thư mục trên hệ thống tệp cục bộ.
Trong trình chỉnh sửa văn bản mà bạn yêu thích, hãy chuyển đến util/strings.gs rồi thay thế tên biến world thành mondo. Ngoài ra, hãy cập nhật Code.gs bằng cách thay thế world thành mondo. Để cập nhật mã đã chỉnh sửa trên script.google.com, hãy đẩy mã đã chỉnh sửa.
clasp push
Chỉ vậy thôi! Mã của bạn hiện đã được cập nhật vào script.google.com.
7. Lập phiên bản và triển khai
clasp cho phép bạn quản lý các phiên bản và việc triển khai. Trước tiên, hãy tìm hiểu một số từ vựng:
- Phiên bản: "Ảnh chụp nhanh" của một dự án tập lệnh. Phiên bản có thể được coi là một nhánh chỉ đọc dùng cho việc triển khai.
- Triển khai: Bản phát hành đã xuất bản của một dự án tập lệnh (thường là dưới dạng một tiện ích bổ sung hoặc ứng dụng web). Bạn phải nhập số phiên bản.
Hãy tạo một phiên bản của tập lệnh:
clasp create-version "First version"
Sử dụng chuỗi phiên bản đã ghi nhật ký mà chúng ta đã tạo thay cho [version], chúng ta có thể triển khai tập lệnh:
clasp create-deployment 1 "First deployment"
Lệnh clasp deploy sẽ xem xét tệp kê khai của bạn và tạo một bản triển khai mới theo phiên bản. Mã của bạn hiện được triển khai dưới dạng một tệp thực thi. Tìm hiểu thêm về vấn đề này trong hướng dẫn triển khai.
8. Vậy là xong!
Chúng tôi hy vọng CLI của Apps Script là một công cụ đơn giản giúp bạn quản lý các dự án Apps Script.
Nội dung đã đề cập
- Cách tạo dự án Apps Script mới
- Cách sao chép, đẩy và kéo các dự án hiện có
- Cách quản lý việc triển khai tập lệnh
Clasp có trên GitHub và sẵn sàng đón nhận các tính năng cũng như bản vá mới.
Chúng tôi rất mong chờ được chiêm ngưỡng tác phẩm của bạn!