Поскольку подчеркивание загружается как модуль AMD, у кого-нибудь есть рекомендации о том, как наилучшим образом настроить глобальные параметры для подчеркивания, чтобы я по-прежнему мог обращаться к нему под тем же унифицированным именем модуля и иметь свои переопределения.
Я поэкспериментировал с этим, и пока у меня есть обертка, в которую я добавляю подчеркивание как зависимость, делаю свои модификации и затем возвращаю измененное подчеркивание.
paths: {
'underscore': 'libs/underscore/1.2.3/underscore',
'underscore-override': 'libs/underscore/define'
}
Внутри define.js я в основноместь следующее:
define(['underscore'], function (_) {
// use mustache syntax
_.templateSettings = {
interpolate : /\{\{(.+?)\}\}/g
};
return _;
});
Этот подход работает, но я уверен, что есть гораздо более элегантный способ добиться этого, чтобы мне не приходилось использовать 'underscore-custom'.
Есть какие-нибудь предложения?
Приветствия: -)
ОБНОВЛЕНИЕ: На основе предложений в принятом ответе я теперь делаю следующее:
libs / bootstrap.js
define([
// add custom library defines here
'../libs/underscore/define'
], function () {
var libs = [].slice.call(arguments),
initialize = function () {
libs.forEach(function (lib) {
if (typeof lib === 'function') {
lib();
}
});
}
return {
initialize : initialize
}
});
libs / underscore / define
define(['underscore'], function(_) {
return function () {
// add custom settings here
};
});
main.js
require(['libs'], function(libs){
libs.initialize();
});