Webpack babel-loader нужен babel.config.js или нет? - PullRequest
0 голосов
/ 29 сентября 2018

У меня есть настройка веб-пакета, как показано ниже

test: /\.m?js$/,
exclude: /(node_modules|bower_components)/,
use: {
  loader: 'babel-loader?cacheDirectory',
  options: {
    presets: [
      '@babel/preset-env',
      '@babel/react', // Error: Plugin/Preset files are not allowed to export objects, only functions.
    ],
    plugins: [
      [
        '@babel/plugin-proposal-decorators',
        {
          legacy: true,
        },
      ],
      [
        '@babel/plugin-proposal-class-properties',
        {
          loose: true,
        },
      ],
    ],
  },
},

Так что мне все еще нужно добавить файл babel.config.js или .babelrc, чтобы снова удвоить конфигурацию?

, если я использую vscodeМне нужен этот файл babel.config.js для какого-нибудь плагина?

1 Ответ

0 голосов
/ 29 сентября 2018

Нет, это избыточно.Я вижу, вы используете пример в babel-loader документах.Я бы рекомендовал использовать пример в официальных документах Babel (нажмите на веб-пакет).Это упрощает настройку вашего веб-пакета и позволяет легко переопределять babel в папках, помещая .babelrc в каталоги, где вы хотите различные настройки.

.babelrc

{
    "presets": [
        "@babel/preset-env"            
        "@babel/preset-react",
    ],
    "plugins": [
        "@babel/plugin-proposal-class-properties",
        {
            "loose: true
        }
    ]
}

Ваш файл конфигурации веб-пакета

module: {
    loaders: [
        {
            test: /\.js$/, exclude: /node_modules/, loader: "babel-loader"
        }
    ]
}

Учитывая эту ошибку: убедитесь, что вы хотя бы установили @babel/preset-react и @babel/preset-env, @babel/core и @babel/plugin-proposal-class-properties!Возможно, вы используете плагины Babel 6.Не могли бы вы поделиться своим package.json?

...