minify - Có thể biên dịch TypeScript thành mã đã được rút gọn không?
Có tùy chọn nào để biên dịch đầu ra của mã TypeScript dưới dạng đã được nén không? Hay chúng ta phải xử lý việc đó trong một quá trình riêng biệt? Và việc làm rối mã có ảnh hưởng đến câu trả lời không?
Câu trả lời #1
Trình biên dịch TypeScript không hỗ trợ việc tạo ra mã rút gọn hoặc mã bị làm rối. bạn sẽ cần sử dụng một công cụ khác trên đầu ra JavaScript của trình biên dịch.
Có một yêu cầu tính năng mở: microsoft/TypeScript#8
Câu trả lời #2
Tôi là tác giả của typescript-closure-compiler.
Về cơ bản, đây là một công cụ tạo ra các tệp tương thích với google closure compiler, có lẽ là trình rút gọn/tối ưu/mã hóa tốt nhất hiện nay.
Tôi cũng đã tạo ra một môi trường thử nghiệm có thể hiển thị kết quả đầu ra được tạo ra.
Bạn có thể xem một dự án ví dụ sử dụng công cụ này.
Quá trình rút gọn được thực hiện bằng gulp.
Câu trả lời #3
Tiêu chuẩn ngành cho việc rút gọn mã là esbuild. (liên kết)
Gọi esbuild sau khi biên dịch sang Javascript
esbuild your_file.js --minify --outfile=your_file.min.js
Một ví dụ về câu ngắn gọn:
tsc --strict --lib DOM,DOM.Iterable,ES6 --target ES6 your_file.ts && esbuild your_file.js --minify --outfile=your_file.min.js
