【问题标题】:Cannot find module babel-preset-es2015找不到模块 babel-preset-es2015
【发布时间】:2019-03-24 03:47:47
【问题描述】:

再次遇到同样的错误:Error: Cannot find module 'babel-preset-es2015'

完整的错误日志:

ERROR in ./main.js Module build failed (from ./node_modules/babel-loader/lib/index.js): Error: Cannot find module 'babel-preset-es2015' from 'C:\Users\hp\Desktop\reactApp'
 at Function.module.exports [as sync] (C:\Users\hp\Desktop\reactApp\node_modules\resolve\lib\sync.js:43:15)
 at resolveStandardizedName (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\files\plugins.js:101:31)
 at resolvePreset (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\files\plugins.js:58:10)
 at loadPreset (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\files\plugins.js:77:20)
 at createDescriptor (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\config-descriptors.js:154:9)
 at items.map (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\config-descriptors.js:109:50)
 at Array.map ()
 at createDescriptors (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\config-descriptors.js:109:29)
 at createPresetDescriptors (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\config-descriptors.js:101:10)
 at passPerPreset (C:\Users\hp\Desktop\reactApp\node_modules\@babel\core\lib\config\config-descriptors.js:58:96) @ multi (webpack)-dev-server/client?http://localhost:8080 (webpack)/hot/dev-server.js ./main.js main[2]

【问题讨论】:

    标签: node.js reactjs babeljs


    【解决方案1】:

    对于 Babel 版本 6,包名称是 babel-preset-es2015,对于 Babel 版本 7,包名称是 @babel/preset-es2015

    从错误看来,您使用的是版本 7。es20XX-presets 已弃用,因此我建议您切换到 @babel/preset-env

    首先安装预设(使用npm):

    npm install --save-dev @babel/preset-env
    

    然后将预设添加到您的.babelrc

    {
        "presets": ["@babel/preset-env"]
    }
    

    【讨论】:

    • 我收到 Unexpected token { error while using preset-env
    • @Do NHu Vy [link]stackoverflow.com/questions/65690420/… 我遇到了同样的错误。你能帮帮我吗?
    • 大约2年我不编程NodeJS,JavaScript,我不知道。
    【解决方案2】:

    babel 7 使用@babel/preset-env。其他预设已弃用 这里说一下https://babeljs.io/docs/en/v7-migration#yearly-preset-deprecations-blog-2017-12-27-nearing-the-70-releasehtml-deprecated-yearly-presets-eg-babel-preset-es20xx

    你应该在配置文件中指定(我不知道你是使用 Webpack 还是其他东西)预设为“@babel/preset-env”。通过npm install --save-dev @babel/preset-env安装

    例如,您正在使用 Webpack 模块捆绑器。在这种情况下,请像这样指定:

    use: {
          loader: "babel-loader",
          options: {
                    presets: ["@babel/preset-env"]
          }
    }
    

    如果您突然需要,这里有一个文档https://webpack.js.org/loaders/babel-loader/

    编码愉快!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-03
      • 2019-07-30
      • 2021-11-04
      • 1970-01-01
      • 1970-01-01
      • 2020-02-05
      • 2019-02-03
      相关资源
      最近更新 更多