无法使用@ babel / preset-env运行node.js文件

时间:2019-01-12 07:14:12

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

我正在尝试运行一个简单的node.js文件,该文件需要@ babel / preset-env预设。运行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

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

非常感谢

2 个答案:

答案 0 :(得分: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"
  }
}

答案 1 :(得分:0)

发现了问题。 .babelrc文件包含对@ babel / preset-env的引用。删除它,并编译js文件就可以了。