Я пытаюсь изменить текущий проект с помощью веб-пакета.В моих сценариях я использую библиотеку lodash, но у меня также есть сценарии, которые не написаны на ES6, поэтому я загружаю lodash глобально, используя обычный тег сценария.Основываясь на документации веб-пакета, я добавил приведенную ниже конфигурацию в веб-пакет (https://webpack.js.org/configuration/externals/).
lodash : {
commonjs: 'lodash',
amd: 'lodash',
root: '_' // indicates global variable
},
. Я без проблем компилирую код, используя babel, но когда выполняется настоящий код, я получаю следующую ошибку "Ошибка типа".: Невозможно прочитать свойство 'forEach' из неопределенного "
Если я удаляю из файла оператор import _ from "lodash";
, тогда проблема решена, и сценарий работает, как и ожидалось, _ в глобальном.
Но ожидалось, что это сработает и без добавления правильных внешних символов. В соответствии с примером веб-пакета для jquery
module.exports = {
//...
externals: {
jquery: 'jQuery'
}
};
Приведенный ниже код не изменится
import $ from 'jquery';
$('.my-element').animate(/* ... */);
В моем случае, почему это не так?работает? Есть предложения? идеи?