web-dev-qa-db-fra.com

Trace: le type de noeud SpreadProperty a été renommé SpreadElement dans Object.isSpreadProperty.

Je lance une application de réaction, et voici ma configuration Webpack:

'use strict'

const ExtractPlugin = require('extract-text-webpack-plugin')
const HTMLPlugin = require('html-webpack-plugin')
module.exports = {
    devtool: 'eval',
    entry: `${__dirname}/src/main.js`,
    output: {
        filename: 'bundle-[hash].js',
        path: `${__dirname}/build`,
        publicPath: '/',
    },
    mode: 'development',
    performance: {
        hints: false
    },
    plugins: [
        new HTMLPlugin(),
        new ExtractPlugin('bundle-[hash].css'),
    ],
    module: {
        rules: [
            {
                test: /\.js$/,
                exclude: /node_module/,
                loader: 'babel-loader',
            },
            {
                test: /\.scss$/,
                loader: ExtractPlugin.extract(['css-loader', 'sass-loader']),
            },
        ],
    },
}

Ensuite, j'ai un fichier package.json, voici les dépendances:

"devDependencies": {
    "@babel/core": "^7.1.6",
    "@babel/plugin-proposal-object-rest-spread": "^7.0.0",
    "@babel/preset-env": "^7.1.6",
    "@babel/preset-react": "^7.0.0",
    "and": "0.0.3",
    "babel-cli": "^6.26.0",
    "babel-core": "^7.0.0-bridge.0",
    "babel-loader": "^8.0.4",
    "eslint": "^5.9.0",
    "install": "^0.12.2",
    "jest": "^23.6.0",
    "npm": "^6.4.1",
    "webpack-cli": "^3.1.2"
  },
  "dependencies": {
    "babel-plugin-transform-object-rest-spread": "^6.26.0",
    "babel-plugin-transform-runtime": "^6.23.0",
    "babel-preset-env": "^1.7.0",
    "css-loader": "^1.0.1",
    "extract-text-webpack-plugin": "^4.0.0-beta.0",
    "html-webpack-plugin": "^3.2.0",
    "node-sass": "^4.11.0",
    "react": "^16.6.3",
    "react-dom": "^16.6.3",
    "resolve-url-loader": "^3.0.0",
    "sass-loader": "^7.1.0",
    "webpack": "^4.25.1",
    "webpack-dev-server": "^3.1.10"
  } 

J'ai essayé de nombreuses manières de mettre à jour les paquets babel jusqu'à la 7e version, en changeant la configuration de babelrc, peu importe.

Le projet compile bien, mais au début de la compilation, je reçois le message suivant:

Trace: le type de noeud SpreadProperty a été renommé SpreadElement à Object.isSpreadProperty

Et environ une centaine de lignes comme ça. Une fois toutes les lignes imprimées, le processus de compilation se poursuit et se termine avec succès.

Qu'est-ce que c'est et comment puis-je me débarrasser de ces lignes?

7
Dmitry Domanski

Dans mon cas, je n'implémentais pas la configuration Webpack et l'erreur était toujours là. Après tant de solutions implémentées, l'erreur était la même ou une fois l'erreur supprimée, une autre apparaissait. Enfin, j'ai supprimé les fichiers .bablerc, .babelrc et package-lock.json et exécuté rm -rf node_modules && npm install, puis react-native run-Android, et cela a fonctionné pour moi. :-)

1
Udit

voici le réglage final qui a résolu le problème pour moi.

.babelrc

{
  "presets": [
    "@babel/preset-env",
    "@babel/preset-react"
  ],
  "plugins": [
    "@babel/plugin-proposal-object-rest-spread"
  ]
}

Pour une meilleure compréhension, voici mon devDependencies de package.json - /:

"devDependencies": {
    "@babel/core": "^7.1.6",
    "@babel/plugin-proposal-object-rest-spread": "^7.0.0",
    "@babel/plugin-transform-object-assign": "^7.0.0",
    "@babel/plugin-transform-react-jsx": "^7.1.6",
    "@babel/preset-env": "^7.1.6",
    "@babel/preset-react": "^7.0.0",
    "babel-loader": "8.0.4",
    "prop-types": "15.6.2",
    "react": "^16.6.3",
    "react-dom": "^16.6.3",
    "style-loader": "^0.23.1",
    "utils": "^0.3.1",
    "webpack": "4.26.1",
    "webpack-cli": "3.1.2",
    "webpack-dev-server": "^3.1.10"
  }

Voici ma section webpack.config.js module:

module: {
        rules: [
            {
                test: /\.(js|jsx)$/ ,
                exclude: /node_modules/,
                loaders: "babel-loader"
            }
        ]
    }
10

Voici le problème similaire était résolu

7
Juddy js