Browserify с помощью jQuery> = 2 выдает «jQuery требует окно с документом»
Я использую browserify, чтобы связать мой интерфейсный javascript, используя зависимости в стиле CommonJS. Например, у меня есть:
$ = require('jquery/dist/jquery'); // v2.1.0-beta2
_ = require('underscore');
Backbone = require('backbone');
Однако, когда browserify связывает зависимости, я сталкиваюсь со следующей ошибкой консоли:
Error: jQuery requires a window with a document
Глядя на код jQuery, я вижу, что он пытается использоватьthis
для глобальногоwindow
.
(function( window, factory ) {
....
}(this, function( window ) {
Так как browserify оборачивает все зависимости,this
являетсяobject
, неwindow
.
Что интересно, jQuery> = 2 должен быть совместим с CommonJS. Однако проблема заключается в том, как browserify оборачивает зависимости. Кто-нибудь решил эту проблему?