2011-12-26 25 views
6

Tôi đã nhìn thấy nhiều biến thể để tải các mô-đun không hỗ trợ AMD, và tôi muốn biết thực hành tốt nhất để làm như thế nào.Cách tốt nhất để bao gồm jQuery, Underscore và Backbone là mô-đun AMD sử dụng require.js là gì?

Cuối cùng, tôi muốn viết module như thế này:

module.js: 

define(["jQuery", "Underscore", "Backbone"], function($, _, Backbone) { 
    ... module code here 
} 

Nhưng có rất nhiều vấn đề với tải những phụ thuộc sử dụng AMD vì chúng là không phải tất cả AMD tuân thủ.

+1

Ý bạn là gì bởi AMD? Không phải là họ CPU, phải không? – Thilo

+1

Không. Định nghĩa mô-đun không đồng bộ. Nghèo lựa chọn của TLA tôi phải thừa nhận ... :) –

+1

Một vài năm trở lại (trước khi chuyển đổi Intel, tôi nghĩ), các nhóm tin đồn Mac đã được abuzz với mã tham chiếu đến amd. Lúc đó, nó là auto-mount-daemon. ;-) – Thilo

Trả lời

1

Hãy xem ví dụ this. Nó độc đáo cho thấy làm thế nào để sử dụng xương sống cùng với requirejs. Nó cũng cho thấy cách bạn có thể tổ chức mô hình, xem và sưu tập gọn gàng.

+0

Có vẻ như ví dụ này là phiên bản cập nhật chứ không phải hướng dẫn giải thích trong trang web. Cảm ơn. –

2

Thomas Davis có ví dụ tốt hơn (imo) để tải jquery/underscore/backbone trong ví dụ không được cập nhật của anh ấy. Bắt đầu bằng cách xem bộ nạp here

Nó sử dụng plugin yêu cầu RequireJS được tìm thấy here để tải mô-đun đồng bộ.

1

Phiên bản mới nhất của RequireJS thêm khả năng sử dụng các file NON-AMD JS.

require.config({ 
    'paths': { 
    "underscore": "libs/underscore-min", 
     "backbone": "libs/backbone-min" 
    }, 
    'shim': 
    { 
     backbone: { 
      'deps': ['jquery', 'underscore'], 
      'exports': 'Backbone' 
     } 
    } 
}); 

Hãy thử.

0

Một điều tôi không hiểu về AMD là có vẻ như nó tải js cần thiết chỉ khi nó cần nhưng với ứng dụng demo nó tải tất cả các tệp jss html css khi bạn truy cập ứng dụng để tải trang đầu tiên.

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