Я реализовал накопительный пакет, который я использую в качестве модуля модуля JavaScript для создания библиотеки пользовательского интерфейса для использования в моем приложении.
При импорте определенных библиотек некоторые выдают неопределенную ошибку.Например, вызов import 'enquire.js';
вызовет: Uncaught ReferenceError: enquire is not defined
.
Большинство плагинов работают нормально, например, начальной загрузки не вызывает проблемы, как и многие другие плагины, но проблема возникает с несколькими избранными библиотеками, которые, я подозреваю, сводятся к одной основной причине, которую я не могуоберните мою голову.
Обратите внимание, что я использую два плагина: распознаватель узлов и commonjs.Эти плагины разрешат пакеты в моей папке node_modules и преобразуют модули commonjs для использования синтаксиса es6 для накопительного пакета
Ниже приведен мой конфигурационный файл grunt с накопительной задачей :
grunt.initConfig({
rollup: {
options: {
format: 'iife',
plugins: function () {
return [
babel({
exclude: './node_modules/**',
}),
nodeResolve(),
commonJS({
include: './node_modules/**'
}),
];
},
},
website: {
dest: 'build/main-min.js',
src: 'src/main.js',
}
}
})
Ниже мой файл ввода main.js :
import './global/jquery.js';
import 'bootstrap';
import 'enquire.js';
// other external dependencies
Ниже описано, как я использую enquire.js:
enquire.register("screen and (max-width:45em)", {
match : function() {},
unmatch : function() {},
setup : function() {},
deferSetup : true,
destroy : function() {}
});
Нижеэто ошибка консоли :
Uncaught ReferenceError: enquire is not defined