Если вы хотите транспилировать javascript-файлы проекта с помощью Babel и webpack – вам потребуется babel-loader, но это и без меня вам известно, но что если некоторые пакеты из исключенных node_modules вы все же хотите скормить транспилятору…?
Относительно недавно в работе я столкнулся с такой проблемой: на сборке проекта в dependencies попали модули, юзающие пакеты, которые IE ожидаемо зафакапил, а node_modules на стандартных конфигах игнорируется babel’ом. На помощь в таком случае может прийти, естественно, транспиляция неугодных когда же ты самоликвидируешься IE пакетов. И ниже представлен стандартный для babel-loader конфиг с небольшой регулярочкой для исключения нескольких npm-пакетов из исключения 🙂
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
module: { rules: [ { test: /\.js$/, exclude: /node_modules(?!(\/|\\)(ansi-regex|strip-ansi))/, use: { loader: "babel-loader", options: { presets: ["@babel/preset-env"], } } } ] }, |
В данном случае у меня исключены 2 пакета (ansi-regex и strip-ansi). Если вам нужно больше – добавляйте, отделяя их |.
Либо можно воспользоваться способом из доков к babel-loader
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
{ test: /\.m?js$/, exclude: { test: /node_modules/, // Exclude libraries in node_modules ... not: [ // Except for a few of them that needs to be transpiled because they use modern syntax /unfetch/, /d3-array|d3-scale/, /@hapi[\\/]joi-date/, ] }, use: { loader: 'babel-loader', options: { presets: [ ['@babel/preset-env', { targets: "ie 11" }] ] } } } |
Добрый день, меня зовут Юрий. Нас заинтересовал Ваш сайт. Мы бы хотели разместить статью или новость на вашем сайте. Возможно ли это? Размещаете тематику о ставках на спорт, форекс, криптовалюты?
Здравствуйте, Юрий. Увы, это личный блог о веб-разработке с обычной рекламой от яндекса. Иные рекламные материалы я не размещаю.