У меня есть изоморфный JavaScript. Я использую RequireJS на стороне клиента.Изоморфный JavaScript с RequireJS
(function() {
'use strict';
function wrapper(require) {
var MyDep = require('my-dependency');
return function MyExportedFunction() {
// ...
};
}
if ((typeof exports === 'object') && module) {
module.exports = wrapper(require); // CommonJS
} else if ((typeof define === 'function') && define.amd) {
define(function(require) {
/**
* I need to `require` dependencies
* in here for them to be available inside
* the wrapper function :(
*/
require('my-dependency');
return wrapper(require);
}); // AMD
}
}());
Есть ли способ, чтобы обойти того, чтобы разместить require
Постулатов, расположенных непосредственно перед wrapper
вызовом функции?
Если я опускаю этот оператор require
, RequireJS жалуется, что зависимость еще не загружена для контекста.
Я предполагаю, что это непреодолимое ограничение способности RequireJS анализировать и идентифицировать требуемые зависимости раньше времени.
OK спасибо, попробую. – Ben