Reactjs - ошибка сборки Webpack: ошибка: файлы плагинов / предустановок не могут экспортировать объекты, только функции - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь напечатать проект, но не могу создать веб-пакет .Я использовал devextreme объекты в проекте, мне нужно сделать настройки, связанные с этим?

Hash: 79a2ea44e6cd4deb6dd7
Version: webpack 4.29.5
Time: 1885ms
Built at: 2019-03-01 10:44:41
     Asset      Size  Chunks             Chunk Names
 bundle.js  6.62 KiB    main  [emitted]  main
index.html  1.65 KiB          [emitted]
Entrypoint main = bundle.js
[./src/index.js] 2.49 KiB {main} [built] [failed] [1 error]

ERROR in ./src/index.js
Module build failed (from ./node_modules/babel-loader/lib/index.js):
Error: Plugin/Preset files are not allowed to export objects, only functions. In C:\Users\takgu\Desktop\react-test\node_modules\babel-preset-stage-0\lib\index.js    at createDescriptor (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-descriptors.js:178:11)
    at items.map (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-descriptors.js:109:50)
    at Array.map (<anonymous>)
    at createDescriptors (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-descriptors.js:109:29)
    at createPresetDescriptors (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-descriptors.js:101:10)
    at presets (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-descriptors.js:47:19)
    at mergeChainOpts (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-chain.js:320:26)
    at C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-chain.js:283:7
    at buildRootChain (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\config-chain.js:120:22)
    at loadPrivatePartialConfig (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\partial.js:85:55)
    at Object.loadPartialConfig (C:\Users\takgu\Desktop\react-test\node_modules\@babel\core\lib\config\partial.js:110:18)
    at Object.<anonymous> (C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:140:26)
    at Generator.next (<anonymous>)
    at asyncGeneratorStep (C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:3:103)
    at _next (C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:5:194)
    at C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:5:364
    at new Promise (<anonymous>)
    at Object.<anonymous> (C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:5:97)
    at Object._loader (C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:220:18)
    at Object.loader (C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:56:18)
    at Object.<anonymous> (C:\Users\takgu\Desktop\react-test\node_modules\babel-loader\lib\index.js:51:12)
Child html-webpack-plugin for "index.html":
     1 asset
    Entrypoint undefined = index.html
    [./node_modules/html-webpack-plugin/lib/loader.js!./public/index.html] 1.85 KiB {0} [built]
    [./node_modules/webpack/buildin/global.js] (webpack)/buildin/global.js 475 bytes {0} [built]
    [./node_modules/webpack/buildin/module.js] (webpack)/buildin/module.js 546 bytes {0} [built]
        + 1 hidden module

Я прочитал и применил документы, относящиеся к настройки веб-пакета , но яне смог избавиться от ошибки.Я поделился содержанием webpack.config.js ниже.

var path=require("path"); //dosya yolunu alabilmek için kütüphanesini ekledik.
const HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports={
    entry:'./src/index.js', //paketlenip tek bir dosya haline gelecek dosyayı belirtiyoruz yani en baş dosya
    output:{
        path:path.resolve(__dirname,'bundle'), // çıkacak olan dosyanın nerede çıkması gerektiğini gösteriyoruz
        filename:'bundle.js' //çıkacak dosyanın adını belirtiyoruz
    },
    mode:'development', //burada production der isek çıkan dosya okunmaz bir şekilde çıktı verir fakat development der isek okunmayacak şekilde sıkıştırarak çıktı verir
    module:{
        rules:[
            {
                test:/\.js$/,
                exclude:'/node_modules/',
                loaders:['babel-loader'],

            },
            { test: /\.css$/, use: ['style-loader', 'css-loader'] },
            { test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: 'file-loader' },
            { test: /\.(woff|woff2)$/, loader: 'url-loader?prefix=font/&limit=5000' },
            {
              test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
              loader: 'url-loader?limit=10000&mimetype=application/octet-stream'
            },
            {
              test: /\.svg(\?v=\d+\.\d+\.\d+)?$/,
              issuer: {
                test: /\.jsx?$/
              },
              use: ['babel-loader', '@svgr/webpack', 'url-loader']
            },
            {
              test: /\.svg(\?v=\d+\.\d+\.\d+)?$/,
              loader: 'url-loader'
            },
            {
              test: /\.png(\?v=\d+\.\d+\.\d+)?$/,
              loader: 'url-loader?limit=10000&mimetype=image/png'
            },
            {
              test: /\.gif(\?v=\d+\.\d+\.\d+)?$/,
              loader: 'url-loader?limit=10000&mimetype=image/gif'
            }
        ]
    },
    plugins: [
        new HtmlWebpackPlugin({
          template: 'public/index.html'
        })
      ]
};

Я поделился настройками файла .babelrc здесь

{
  "presets": ["env", "stage-0", "react","es2015"],
  "plugins": [
      "transform-decorators-legacy"
  ]
}

Я жду вашей помощи.

1 Ответ

0 голосов
/ 01 марта 2019

Я только начал учить себя программированию, поэтому я могу ошибаться, но насколько я знаю, когда babel повысился с babel 6 до babel 7, они сделали несколько серьезных изменений.Они сделали babel гораздо более модульным, поэтому вам нужно импортировать из @ babel / "имя плагина".

Я настоятельно рекомендую вам взглянуть на https://babeljs.io/docs/en/v7-migration для получения более подробной информации.

Они также изменили способ работы сценических пресетов.Так что ваш «этап-0» больше не работает.Вместо этого вам нужно импортировать плагин для каждой экспериментальной функции, которую вы хотите перенести.

Возможно, это не источник вашей ошибки, но, по крайней мере, это место для начала.Дайте мне знать, как вы поживаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...