Как я могу требовать произвольный локальный скрипт в приложении веб-пакета во время выполнения?
Я пытаюсь загрузить некоторые произвольные модули во время выполнения, которые недоступны во время сборки. Подумайте о плагинах, которые требуются только во время выполнения. Так что-то вроде:
require(plugin_dir + '/plugins.js')
должен быть загружен, но Webpack справедливо жалуется, что этот модуль недоступен. Как я могу сделать эту работу?
Я попытался SystemJS обмануть веб-пакет, но он понял, чего я пытаюсь достичь, и потерпел неудачу.
1 ответ
Решение
В конце концов я использовал https://github.com/ezze/node-require-wrapper
Это работает так:
Файл конфигурации Webpack:
module.exports = {
// ...
module: {
rules: {
// ...
},
noParse: /require-wrapper/
}
}
Тогда в вашем коде вы можете использовать его так:
var nodeRequire = require('require-wrapper');
var helloModulePath = path.resolve(__dirname, 'dynamic/hello.js');