代码之家  ›  专栏  ›  技术社区  ›  Darryl RN

@babel/preset env在升级babel6到7后加载了错误的babel版本

  •  0
  • Darryl RN  · 技术社区  · 8 年前

    我试图升级我的巴别塔从6到7,但我遇到了这个问题。

    /Users/darryl/Documents/Github/apps/node_modules/babel-register/node_modules/babel-core/lib/transformation/file/options/option-manager.js:328
            throw e;
            ^
    
    Error: Requires Babel "^7.0.0-0", but was loaded with "6.26.3". If you are sure you have a compatible version of @babel/core, it is likely that something in your build process is loading the wrong version. Inspect the stack trace of this error to look for the first entry that doesn't mention "@babel/core" or "babel-core" to see what is calling Babel. (While processing preset: "/Users/darryl/Documents/Github/apps/node_modules/@babel/preset-env/lib/index.js")
        at throwVersionError (/Users/darryl/Documents/Github/apps/node_modules/@babel/preset-env/node_modules/@babel/helper-plugin-utils/lib/index.js:65:11)
        at Object.assertVersion (/Users/darryl/Documents/Github/apps/node_modules/@babel/preset-env/node_modules/@babel/helper-plugin-utils/lib/index.js:13:11)
        at _default (/Users/darryl/Documents/Github/apps/node_modules/@babel/preset-env/lib/index.js:154:7)
        at /Users/darryl/Documents/Github/apps/node_modules/@babel/preset-env/node_modules/@babel/helper-plugin-utils/lib/index.js:19:12
        at /Users/darryl/Documents/Github/apps/node_modules/babel-register/node_modules/babel-core/lib/transformation/file/options/option-manager.js:317:46
        at Array.map (<anonymous>)
        at OptionManager.resolvePresets (/Users/darryl/Documents/Github/apps/node_modules/babel-register/node_modules/babel-core/lib/transformation/file/options/option-manager.js:275:20)
        at OptionManager.mergePresets (/Users/darryl/Documents/Github/apps/node_modules/babel-register/node_modules/babel-core/lib/transformation/file/options/option-manager.js:264:10)
        at OptionManager.mergeOptions (/Users/darryl/Documents/Github/apps/node_modules/babel-register/node_modules/babel-core/lib/transformation/file/options/option-manager.js:249:14)
        at OptionManager.init (/Users/darryl/Documents/Github/apps/node_modules/babel-register/node_modules/babel-core/lib/transformation/file/options/option-manager.js:368:12)
        at compile (/Users/darryl/Documents/Github/apps/node_modules/babel-register/lib/node.js:103:45)
        at loader (/Users/darryl/Documents/Github/apps/node_modules/babel-register/lib/node.js:144:14)
        at Object.require.extensions.(anonymous function) [as .js] (/Users/darryl/Documents/Github/apps/node_modules/babel-register/lib/node.js:154:7)
        at Module.load (module.js:556:32)
        at tryModuleLoad (module.js:499:12)
        at Function.Module._load (module.js:491:3)
        at Function.Module.runMain (module.js:684:10)
        at startup (bootstrap_node.js:187:16)
        at bootstrap_node.js:608:3
    

    我尝试删除node\u模块和package-lock.json,并运行 npm cache clean --force

    但这个错误还是发生了。 如何强制这个依赖项(@babel/preset env)在依赖项中使用babel7而不是babel6.26.3?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Darryl RN    8 年前

    如所述 loganfsmyth ,做

    npm i -D @babel/register
    

    babel-register 依赖仍然使用巴别塔版本6。

    推荐文章