has bundled a module archive of JavaScript classes in a library using a browser circuit. But I need to define _
and backbone
as the global code and would be surprised that this is the best way.
MyLib is mostly a backbone archive, which requires other subdomains:
var _ = is required ('trash'); Var BABON = Required ('backbone'); If (type window! == 'undefined') BABON. $ = Window $; Var foo = require ('foo'), bar = need ('bar'); Module Exports = backbone.collection.andend ({... my library ...});
Because the backons and underscores are bigger and more common, do not want to bundle them, but consider them as external dependencies. Therefore, in package.json
, I am using browserify-shim
to exclude:
... "browserify" Module: "Browser-Shim"}, "Browser-Shim": {"Junk": "Global": "Global": {"Transform": "Globally: Backbone"}
The load in the "backbone" browser is okay, because _
is defined as a global variable:
But in node. Js, browser-bundle module looks for these external dependencies in an object named global
var _ = Is required ("trash"); Var MyLib = Required (". Libs / mylib"); It fails with TypeError: The method of the undefined can not call 'isEqual'
because _
is undefined Mylib.js
inside I am looking for: var _ = (type window! == "undefined"? Window._: type global =! Defining dependency across the web can work: var _ _ _ _> = GLOBAL.global._ = Required ("Junk"); Var requires MyLib = ( ". / Libs / mylib");
But this global variable What makes this post very frustrating is:
Is there a better way of adding external dependencies to the Browerify module in Node.js?
No comments:
Post a Comment