2012-02-09 30 views
7

Tôi rất biết ơn vì Addy Osmani và Thomas Davis đã xuất bản các ví dụ và bản mẫu của chúng (http://backbonetutorials.com/organizing-backbone-using-modules, https://github.com/addyosmani/backbone-aura).Ứng dụng web với các gói backbone.js và requirejs, trình tối ưu hóa requirejs

Họ đã giúp tôi rất nhiều để bắt đầu.

Tôi hiện đang phát triển một ứng dụng web lớn. Vì vậy, tôi có rất nhiều thành phần, ví dụ quản lý địa chỉ, quản lý ngày, todos. Mỗi thành phần sẽ lấp đầy toàn bộ không gian trong ứng dụng của tôi (ngoại trừ thanh trình đơn). Mỗi lựa chọn của một thành phần mới trong menu yêu cầu chuyển đổi trang.

Ban đầu tôi lấy cấu trúc tệp, bản mẫu được sử dụng bởi các hướng dẫn ở trên (cung cấp tất cả các chế độ xem cho thư mục 'lượt xem'). Nhưng khi nhiều thành phần được thêm vào, việc đưa các khung nhìn vào một thư mục views trở nên khó hiểu đối với tôi. Thậm chí làm cho các thư mục con sẽ không có giải pháp, bởi vì trong cấu trúc tệp này, tôi đã mất thông tin mà chế độ xem có liên quan đến mô hình nào.

Vì vậy, tôi đã tìm kiếm một giải pháp khác và tìm thấy các gói requireds amd (http://requirejs.org/docs/api.html#packages). Điều này đã giúp tôi rất nhiều vì tất cả các mô-đun thuộc cùng một thành phần (mô hình, bộ sưu tập, chế độ xem) đều được đưa vào một thư mục. Bởi vì postfixing mỗi mô hình với "Model" (và như vậy), những thứ mà đủ sạch cho tôi.

Bây giờ đến câu hỏi: Tôi đang ở giai đoạn tiền sản xuất. Tôi đã không tham gia xây dựng và ghép nối mọi thứ lại với nhau để triển khai sản xuất. Nhưng bây giờ tôi muốn thử trình tối ưu hóa requirejs. Tôi đã đọc trang "http://requirejs.org/docs/optimization.html" từ James Burke. Nhưng không phải mọi thứ đều rõ ràng với tôi.

Muốn tôi muốn có những điều sau đây: Tôi có các thư mục gói này. Tất cả các mô-đun amd (khung nhìn, mô hình, bộ sưu tập) từ một thư mục gói sẽ được nối vào một tệp, nhưng không nên bao gồm các phụ thuộc của chúng, vì phần lớn các gói phụ thuộc bên ngoài này được nạp riêng ngay từ đầu.

Có ai có yêu cầu tương tự hoặc tương tự hay không, người đã thực hiện bước này và có thể đưa ra một số gợi ý.

Thanks a lot
Wolfgang

+0

Tôi vừa phát hành một bộ công cụ nguồn mở, hy vọng sẽ giúp người khác nhiều như nó giúp tôi. Nó là một thành phần của nhiều công cụ mã nguồn mở cung cấp cho bạn một ứng dụng xương sống requirejs đang hoạt động ngoài hộp. Nó cung cấp các lệnh duy nhất để chạy: máy chủ web dev, trình kiểm tra trình duyệt đơn hoa nhài, trình kiểm tra trình duyệt jasmine js-test-driver đa trình điều khiển, và ghép/rút gọn cho JavaScript và CSS. Nó cũng xuất ra một phiên bản chưa được sửa đổi của ứng dụng của bạn để gỡ lỗi sản xuất, biên dịch trước các mẫu thanh điều khiển của bạn và hỗ trợ i18n. Nó chỉ hoạt động. http://github.com/davidjnelson/agilejs – davidjnelson

Trả lời

8

Bạn có thể có một cái nhìn tại các vài boilerplates và xem họ là hữu ích ...

https://github.com/jcreamer898/RequireJS-Backbone-Starter
https://github.com/david0178418/BackboneJS-AMD-Boilerplate
https://github.com/swbiggart/node-express-requirejs-backbone

Một vài của những người đã xây dựng kịch bản trong họ để cho bạn thấy cách hoạt động.

+0

Cảm ơn vì điều đó, bạn có thể cho chúng tôi biết bạn đã sử dụng nồi hơi nào và tại sao? –

+0

Tôi đã viết đầu tiên, Nó có kịch bản xây dựng trong nó cũng như một số loại dĩa AMD thực tế của Backbone và Underscore do đó không cần phải sử dụng bộ nạp mà người thứ hai sử dụng. Cái thứ ba là một ví dụ sử dụng Node làm máy chủ. – jcreamer898

+0

bạn có thể vui lòng thêm một liên kết đến ngã ba AMD đó không? Tôi không thể tìm thấy nó. – abstraktor

Các vấn đề liên quan