Skip to content

Instantly share code, notes, and snippets.

@ChenReuven
Created March 12, 2013 08:46
Show Gist options
  • Save ChenReuven/5141239 to your computer and use it in GitHub Desktop.
Save ChenReuven/5141239 to your computer and use it in GitHub Desktop.
RJS: AMD Snippets Lib
/** jQuery AMD Snippet **/
// Expose jQuery as an AMD module, but only for AMD loaders that
// understand the issues with loading multiple versions of jQuery
// in a page that all might call define(). The loader will indicate
// they have special allowances for multiple jQuery versions by
// specifying define.amd.jQuery = true. Register as a named module,
// since jQuery can be concatenated with other files that may use define,
// but not use a proper concatenation script that understands anonymous
// AMD modules. A named AMD is safest and most robust way to register.
// Lowercase jquery is used because AMD module names are derived from
// file names, and jQuery is normally delivered in a lowercase file name.
// Do this after creating the global so that if an AMD module wants to call
// noConflict to hide this version of jQuery, it will work.
if ( typeof define === "function" && define.amd && define.amd.jQuery ) {
define( "jquery", [], function () { return jQuery; } );
}
/** Underscore AMD Snippet **/
if ( typeof define === "function" && define.amd){
define('underscore' , function(){
return _;
});
}
/** Backbone AMD Snipper **/
if ( typeof define === "function" && define.amd){
define(['underscore', 'jquery', 'exports'] , function(_, $ , exports){
root.Backbone = factory(root, exports, _, $);
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment