Я использую
typescript, модули -
commonjs. Загружаю файлы с помощью
SystemJS. Понадобилось мне прикрутить
этот плагин, сделал я это таким образом:
SystemJS.config({
"defaultJSExtensions": true,
map: {
css: '/js/system-css.js',
},
meta: {
'*.css': { loader: 'css' }
},
baseURL: '/',
paths: {
jquery: 'js/jquery',
scrollbar: 'js/scrollbar',
datepicker: 'js/datepicker'
}
});
var systemLocate = System.locate;
System.locate = function (load) {
var System = this;
return Promise.resolve(systemLocate.call(this, load)).then(function (address) {
return address + System.cacheBust;
});
};
System.cacheBust = '?id=' + CONFIG.version;
System.import('js/bootstrap.js');
Получил за это:
SystemJS Multiple anonymous defines in module
Плагин
scrollbar, который подключен выше - работает, т.к. в коде самого плагина нет проверки
factory как в datepicker'e:
(factory) {
if ( typeof define === 'function' && define.amd ) {
// AMD. Register as an anonymous module.
define(['jquery', 'jquery-mousewheel'], factory);
} else if (typeof exports === 'object') {
// Node/CommonJS style for Browserify
module.exports = factory;
} else {
// Browser globals
factory(jQuery);
}
}
Что мне делать с этим - не пойму, но выковыривать проверку factory - не вариант, т.к. во многих плагинах она есть и это нормальная практика.
Кто сталкивался, подскажите что делать чтоб systemJS не ругался?