Hãy xem this thread trong nhóm thảo luận đóng.
Đây là những gì nguồn html của tôi khoảng trông giống như:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-US" xml:lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- style sheets -->
<link rel="stylesheet" href="/m/myapp/css/style.css">
<!-- closure base -->
<script type="text/javascript" src="/m/google-closure/closure/goog/base.js"></script>
<!-- file containing dependencies specific to the project -->
<script type="text/javascript" src="/m/myapp/my-deps.js"></script>
<!-- main script of my application -->
<script type="text/javascript" src="/m/myapp/main-script.js"></script>
</head>
<body>
<div id="myapp_div"></div>
<script type="text/javascript">
load_myapp_into("myapp_div");
</script>
</body>
</html>
Viết mã ứng dụng của bạn và tổ chức nó trong bất kỳ cách nào bạn thích trong một thư mục mà các bản đồ để /m/myapp
url. Chỉ cần chỉ định tệp tập lệnh chính. Số còn lại sẽ được tải theo bản đồ phụ thuộc theo số base.js
.
Kind của một tính năng thú vị của việc đóng cửa là bạn có thể di chuyển và đổi tên file bất kỳ cách nào bạn thích kể từ khi sự phụ thuộc tính quyết định cho bạn biết những gì xuất phát từ đâu.
Phần quan trọng nhất là để tính toán các tập tin phụ thuộc - my-deps.js
đây. Tôi vẫn sử dụng cũ của họ calcdeps.py
, nhưng có vẻ như có một công cụ tốt hơn bây giờ gọi là depswriter
.
Sau khi chạy calcdeps.py
, nhiều khả năng bạn sẽ phải ghi lại đường dẫn bên trong tệp deps được tạo, vì những đường dẫn đó phải tương ứng với base.js
.
Ngoài ra, mặc dù bạn có thể không quan tâm đến các trình biên dịch - đó là hữu ích vì nó chỉ ra nhiều lỗi. Tôi sử dụng trình biên dịch anyway chỉ cho mục đích đó. Ngoài ra - đóng cửa mà không có trình biên dịch có thể chỉ hữu ích để gỡ lỗi, vì kích thước tải xuống của mã chưa được biên dịch có thể rất lớn.
Đừng bỏ qua các mẫu đóng - chúng thực sự gọn gàng.
tải sách "đóng cửa: hướng dẫn dứt khoát" về cắt thô thô để có được ý tưởng về cách goog.ui hoạt động. – Evgeny
bạn sẽ không thể làm gì nhiều với base.js một mình, bạn có thể nhận được mà không cần trình biên dịch trong một thời gian, nhưng bạn sẽ sớm cần một máy tính phụ thuộc như tập lệnh deps có thể phức tạp và không vui để duy trì . – Evgeny