Добрый день, Максим!
Пользуюсь вашей сборкой уже несколько месяцев, всё круто и хорошо.
Но есть вопрос по асинхронным функциям, подскажите как реализовать корректную работу сборки с использованием данных функций, помогите решить вопрос 🙋.
При использовании асинхронной функции консоль выдает ошибку: Error: Module parse failed: The top-level-await experiment is not enabled (set experiments.topLevelAwait: true to enabled it)
Для решения данной проблемы я установил плагин '@babel/plugin-syntax-top-level-await' и прописал новое условие для webpack: topAwait: true
Но видимо этого не достаточно, либо я делаю не то, что нужно.
Добрый день, Максим! Пользуюсь вашей сборкой уже несколько месяцев, всё круто и хорошо. Но есть вопрос по асинхронным функциям, подскажите как реализовать корректную работу сборки с использованием данных функций, помогите решить вопрос 🙋. При использовании асинхронной функции консоль выдает ошибку: Error: Module parse failed: The top-level-await experiment is not enabled (set experiments.topLevelAwait: true to enabled it)
Для решения данной проблемы я установил плагин '@babel/plugin-syntax-top-level-await' и прописал новое условие для webpack: topAwait: true Но видимо этого не достаточно, либо я делаю не то, что нужно.
const scripts = () => { return src(paths.srcMainJs) .pipe(plumber({ errorHandler: notify.onError({ title: "JS", message: "Error: <%= error.message %>" }) })) .pipe(webpackStream({ mode: isProd ? 'production' : 'development', output: { filename: 'main.js', }, module: { rules: [{ test: /.m?js$/, exclude: /node_modules/, use: { loader: 'babel-loader', options: { presets: [ ['@babel/preset-env', { targets: "defaults", // Включение эксперимента с верхнеуровневым ожиданием // (top-level await) topAwait: true }] ] } } }] }, devtool: !isProd ? 'source-map' : false })) .on('error', function (err) { console.error('WEBPACK ERROR', err); this.emit('end'); }) .pipe(dest(paths.buildJsFolder)) .pipe(browserSync.stream()); }
Так сейчас выглядит файл.