Quelle est la bonne façon d'exécuter du code sur Underscore quand il est chargé? Je suis en train d'exécuter le code ci-dessous pour étendre l'espace de noms _ exporté automatiquement lorsque les modules exigent:Comment mixer des plugins Underscore dans RequireJS?
_.mixin(_.str.exports());
Les documents sont un peu vague, mais je pense que je l'ai mis dans la section init cale? J'ai essayé le même ci-dessous, mais je ne peux pas obtenir un point d'arrêt à frapper dans 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 _;
}
}
}
});
Lorsque je tente de le faire et utiliser underscorestring, je reçois cette erreur:
Uncaught TypeError: Object function s(e){return new o(e)} has no method 'startsWith'
Docs:
OUI - m'a sauvé heures – hharnisc
Il n » t semble "init" fonctionne dans la cale avec le dernier RequireJS. Découvrez cette technique à la place: http://blog.falafel.com/Blogs/basem-emara/2014/02/17/the-lo-dash-on-underscore.js-and-strings – TruMan1
Vous pouvez utiliser la 'map 'propriété pour alias 'underscore' sur votre 'underscore.mixed'. Voir http://requirejs.org/docs/jquery.html#noconflictmap –