#javascript #node.js #webpack #babeljs
#javascript #node.js #webpack #babeljs
Вопрос:
Я пытаюсь перенести код es6 в es5, используя webpack и babel, и в js-файл я импортирую jquery, как показано ниже:
import $ from 'jquery';
Поэтому, когда я создаю код с помощью webpack, выходной файл получает содержимое jquery вместе с исходным транспилированным кодом, который я не хочу использовать. Я добавил приведенную ниже инструкцию exclude к webpack.config.js но это, похоже, не исключает добавления части jquery.
exclude:path.resolve(__dirname, 'node_modules'),
Вот что такое webpack.config.js файл выглядит следующим образом:
var path = require('path');
module.exports = {
entry: {
copystyles: './src/copystyles.js',
docErrorReporter: './src/docErrorReporter',
},
output: {
path: path.resolve(__dirname, 'lib'),
filename: "[name].js",
},
mode:'none',
module: {
rules: [
{
test: path.join(__dirname, 'src'),
exclude:path.resolve(__dirname, 'node_modules'),
use: ['babel-loader']
}
]
}
};
Кто-нибудь может сказать мне, не упускаю ли я здесь чего-то?
Спасибо!
Комментарии:
1. вы
test:path.join(__dirname, 'src')
в этом уверены ? потому что я думаю, что так и должно бытьtest:/.js/
2. Вы можете просто включить
<script>
тег в свойpublic/index.html
для загрузки jQuery из CDN — и тогда он будет доступен поwindow.$
всему миру и не будет включен в ваш пакет.3. @AlanOmar Да, это также работает по назначению
4. @VaishnavSivadas Это решение решило вашу проблему?
5. @IVOGELOV Спасибо вам за это решение, но это не помогло бы в сценарии, который я рассматриваю.