Каков правильный способ выполнения кода на Underscore при загрузке? Я пытаюсь выполнить приведенный ниже код, чтобы автоматически расширять пространство, экспортированное им, когда модули нуждаются в нем:
_.mixin(_.str.exports());
Документы немного расплывчаты, но я думаю, что я поместил их в секцию инициализации shim. Я попробовал следующее, но я даже не могу получить точку останова для запуска в init:
require.config({
paths: {
jquery: 'libs/jquery/jquery.min',
underscore: 'libs/underscore/lodash.min',
underscorestring: 'libs/underscore/underscore.string.min'
},
shim: {
underscore: {
exports: '_'
}
underscorestring: {
deps: ['underscore'],
init: function (_) {
//Mixin plugin to namespace
_.mixin(_.str.exports());
return _;
}
}
}
});
Когда я пытаюсь это сделать и использую underscorestring, я получаю эту ошибку:
Uncaught TypeError: функция объекта s (e) {return new o (e)} не имеет метод 'startsWith'
Docs: