Tôi mới học võ đường và tôi đã đi qua các hàm require()
và define()
và tôi không thể có được đầu của tôi xung quanh một trong hai. Ngoài ra, khi nào tôi sẽ sử dụng một trong hai? Một bản demo hoặc ví dụ nhỏ sẽ có lợi. Cảm ơn nhiều!Sự khác biệt chính giữa hàm require() và define() trong dojo là gì và khi nào chúng ta sẽ sử dụng?
Sự khác biệt chính giữa hàm require() và define() trong dojo là gì và khi nào chúng ta sẽ sử dụng?
Trả lời
require
và define
là một phần của API định nghĩa mô-đun không đồng bộ (AMD).
Bạn sử dụng define
để xác định mô-đun có thể được tiêu thụ bởi mã khác. Nói chung, define
sẽ được sử dụng trong tệp javascript. Tệp javascript đang định nghĩa một mô-đun. Tất cả các tệp Dojo đều sử dụng định nghĩa.
Bạn sử dụng require
khi bạn không xác định mô-đun, nhưng bạn yêu cầu các mô-đun đã được xác định. Nói chung, require
sẽ được sử dụng trong các trang HTML. Trang HTML không phải là một mô-đun, nhưng yêu cầu các mô-đun trình bày trang cho người dùng.
AMD API
Câu trả lời rất hay. – Krishna
Phát hiện một triệu chứng của việc sử dụng sai là gọi lại trở lại ngay lập tức trước khi mã chạy ... http://stackoverflow.com/questions/5590618/requirejs-calling-callbacks-before-dependencies-loaded-resolved?rq=1 – prototype
khi bạn định nghĩa mô-đun mới và bạn cần một mô-đun khác mà bạn đã tạo, bạn có thể sử dụng định nghĩa để yêu cầu mô-đun đó – AhammadaliPK
Một liên kết tốt: [Dojo require() vs xác định()] (http://g00glen00b.be/dojo-require-vs-define/). "define()" cung cấp một giá trị trả về và tải xuống một cách lười biếng các phụ thuộc. Nó được sử dụng để xác định các mô-đun tùy chỉnh của riêng bạn và các phụ thuộc mà nó cần. "require()" của việc sử dụng chính là nhập khẩu các mô-đun. Cả hai đều đồng bộ; chỉ yêu cầu() là không lười biếng. – FoggyDay