【问题标题】:Unable to run a node.js file with @babel/preset-env无法使用 @babel/preset-env 运行 node.js 文件
【发布时间】:2019-06-07 00:35:55
【问题描述】:

我正在尝试运行一个需要 @babel/preset-env 预设的简单 node.js 文件。在我运行 js 文件的那一刻,我收到一条消息说

需要 Babel “7.0.0-0”,但加载的是“6.26.3”

要复制问题,请在新文件夹中尝试以下操作: 1.运行以下命令

npm init
npm install @babel/register
npm install @babel/core@^7.2.2
npm install @babel/preset-env
  1. 使用以下内容创建一个 .babelrc 文件
{
"presets": ["@babel/preset-env"],
"plugins": []
}
  1. 使用以下内容创建示例 emp.jsx
import React from "react";
class CommentBox extends React.Component {}
  1. 使用以下内容创建一个 parse.js 文件
require('babel-register')({presets: ['env', 'react']});
let Emp = require('./emp.jsx');

现在通过运行来运行 parse.js 文件

node parse.js

您应该会看到上述错误。我已经尝试修复很长时间了。请帮忙。

非常感谢

【问题讨论】:

  • 你应该安装和使用@babel/register
  • 谢谢@WilliamChong。试过了,但没有运气。我仍然得到同样的错误。你建议我什么时候安装@babel/register?我是在安装@babel/core@^7.2.2 之后安装的

标签: node.js babeljs babel-preset-env


【解决方案1】:

按照您的指示使用 @babel/register 代替 这个 package.json 运行没有问题

tasted on
node : v8.11.2
yarn : 1.12.3

paese.json

require('@babel/register')({});
let Emp = require('./emp.jsx');
console.log(Emp)

packge.json

{
  "name": "sof",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "@babel/core": "^7.2.2",
    "@babel/preset-env": "^7.2.3",
    "@babel/register": "^7.0.0"
  },
  "dependencies": {
    "react": "^16.7.0"
  }
}

【讨论】:

  • 谢谢@Naor,对我不起作用。这是我正在运行的批处理文件 call npm init call npm install @babel/register call npm install @babel/core@^7.2.2 call npm install @babel/preset-env node parse.js 得到同样的错误。还对上面的 parse.js 文件进行了小修改。请看一看。
【解决方案2】:

发现问题。包含对 @babel/preset-env 的引用的 .babelrc 文件。去掉它,js文件编译就好了。

【讨论】:

    猜你喜欢
    • 2018-03-18
    • 1970-01-01
    • 2018-07-02
    • 1970-01-01
    • 2018-04-27
    • 2018-09-10
    • 2018-09-06
    • 1970-01-01
    • 2017-12-28
    相关资源
    最近更新 更多