Подтвердить что ты не робот

Магистраль от NPM через JSPM

Я пытаюсь установить backbone.marionette из NPM с JSPM для разрешения зависимостей клиента. Простая операция со следующей командой в commandprompt:

jspm install marionette = npm: backbone.marionette

Все зависимости - за исключением того, что jquery автоматически загружается и устанавливается. Но я получаю ошибку времени выполнения: "Не удается вызвать" Отложен "из undefined". Я искал код, и я обнаружил, что проблема была в исходной кодовой строке 9, 10 и 11

} else if (typeof exports !== 'undefined') {
  var _ = require("underscore");
  factory(root, exports, _);

При запуске под traceurJS здесь вызывается метод factory, и ясно, что последний аргумент $, не учитывается. Когда я смотрю в базовом исходном коде на github, те же строки выглядят следующим образом:

} else if (typeof exports !== 'undefined') {
var _ = require('underscore'), $;
try { $ = require('jquery'); } catch(e) {}
factory(root, exports, _, $);

Здесь зависимость jquery добавлена ​​с опцией (try/catch). Я должен добавить здесь, что версия NPM отмечена той же версией, что и github - 1.1.2. Почему разница? Кажется, что это было проблемой в течение некоторого времени, так как опубликовано несколько рабочих мест, таких как добавление этого кода:

$           = require('jquery');
Backbone    = require('backbone');
Backbone.$  = $

Мне это не нравится, хотя он работает, потому что это обходной путь, и кажется, что он "не существует".

4b9b3361