Хорошо, я впервые использую инструментальный пакет, и мне нравится, как мало он делает код.Потрясение деревьев - это здорово.Тем не менее, у меня возникли проблемы с тем, чтобы включить все правильно.Я попытался создать единую точку входа exp.js, куда я экспортирую вещи из разных файлов, например:
export {
dashboardCharts
} from './dashboard.js';
мой rollup.config.js выглядит как
export default {
// tell rollup our main entry point
input: [
'assets/js/exp.js',
],
output: {
name: 'helloworld',
file: 'build/js/main.js',
format: 'iife'
// format: 'umd'
},
plugins: [
resolve({
// pass custom options to the resolve plugin
customResolveOptions: {
moduleDirectory: 'node_modules'
}
}),
multiEntry()
// terser(),
],
};
Файлdashboard.js включает в себя библиотеку datatables, поэтому datatables включается в комплект main.js.Тем не менее, datatables проверяет, должен ли он идти по пути commonjs или нет, проверяя
else if ( typeof exports === 'object' ) {
// CommonJS
module.exports = function (root, $) {
, и я пытаюсь выполнить это в браузере, поэтому я не хочу путь commonjs.Область верхнего уровня свертка объявлена как
var helloworld = (function (exports) {
, поэтому экспорт заканчивается как пустой объект, браузер пытается выполнить путь commonjs, и мы получаем ошибку «модуль не определен».
Мне кажется, что я очень близок, но здесь мне не хватает простого решения.Я также попытался сделать формат umd вместо iife, но это не помогло.Должна ли я использовать другую версию таблиц данных?