问题
I'm trying to run a simple node.js file which needs the @babel/preset-env preset. The moment I run the js file, I get a message saying
Requires Babel “7.0.0-0” but was loaded with “6.26.3”
To replicate the issue, please try the following in a new folder: 1. Run the following commands
npm init
npm install @babel/register
npm install @babel/core@^7.2.2
npm install @babel/preset-env
- Create a .babelrc file with the following
{ "presets": ["@babel/preset-env"], "plugins": [] }
- Create a sample emp.jsx with the following
import React from "react"; class CommentBox extends React.Component {}
- Create a parse.js file with the following
require('babel-register')({presets: ['env', 'react']}); let Emp = require('./emp.jsx');
Now run the parse.js file by running
node parse.js
You should see the error mentioned above. I have been trying to fix with for a long time now. Please help.
Many Thanks
回答1:
followed your instructions and using @babel/register instead with this package.json run with no issues
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"
}
}
回答2:
Found the problem. The .babelrc file that contained a reference to @babel/preset-env. Removed it and the js file compiled just fine.
来源:https://stackoverflow.com/questions/54157519/unable-to-run-a-node-js-file-with-babel-preset-env