Tôi đã bắt kịp với hệ sinh thái JS phía máy khách hiện đại và đọc trên CommonJS và AMD (bao gồm các công cụ liên quan - browserify, requestjs, onejs, jam, hàng tá thứ khác). Nếu tôi đang viết thư viện Javascript, làm cách nào để tôi mô đun hóa / gói nó sao cho có thể truy cập rộng rãi nhất (lý tưởng nhất là bởi những người dùng đã chửi bới CommonJS, AMD và đặc biệt là không)?
Các thư viện phổ biến như jQuery dường như chỉ sử dụng cách ghép tệp trường cũ để tự xây dựng và tự động phát hiện xem nó có nên ghi vào exports
bối cảnh toàn cầu hay không. Tôi hiện đang làm điều tương tự, nhưng nhược điểm chính là nếu tôi (không giống như jQuery) phụ thuộc vào một vài thư viện, thật tuyệt khi không phải yêu cầu người dùng bao gồm trước bộ thủ công. (Mặc dù hiện tại tôi chỉ có hai phụ thuộc.) Và tất nhiên là ô nhiễm không gian tên toàn cầu.
Hoặc có lẽ là sạch nhất để tạo nhiều phiên bản thư viện của tôi, cho từng bối cảnh?
Tôi cũng đang tự hỏi về bao bì và xuất bản. Có một số hệ thống, nhưng tôi tin rằng hệ thống chính là bower, dễ xử lý vì tất cả những gì nó làm là tìm nạp. Tuy nhiên, tôi tự hỏi liệu tôi cũng nên nhắm mục tiêu các hệ thống gói khác như thành phần (yêu cầu CommonJS).
Có những khía cạnh liên quan khác mà tôi nên biết? Có bất kỳ dự án ví dụ tốt để làm theo cho tất cả điều này?