babel cli正常工作时babel-node失败

时间:2020-06-25 02:54:52

标签: javascript node.js babeljs babel-node

编辑:解决方案是从package.json上删除type = module

我正在尝试使用babel-node,但无法从.babelrc中提取预设。奇怪的是babel cli的工作情况还不错。

这有效:

$ npx babel src/build-html.js

此操作失败:

$ npx babel-node src/build-html.js
SyntaxError: Unexpected token '<'

这也有效:

$ npx babel src/build-html.js | node

.babelrc.yml

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

package.json

{
  "type": "module",
  "scripts": {
    "build:html": "babel-node src/build-html.js",
  },
  "dependencies": {
    "react": "^16.13.1",
    "react-dom": "^16.13.1"
  },
  "devDependencies": {
    "@babel/cli": "^7.10.3",
    "@babel/core": "^7.10.3",
    "@babel/node": "^7.10.3",
    "@babel/preset-env": "^7.10.3",
    "@babel/preset-react": "^7.10.1"
  }
}

src / build-html.js

import React from 'react'
import ReactDOMServer from 'react-dom/server'

const HelloWorld = () => <div>Hello World</div>

const output = ReactDOMServer.renderToStaticMarkup(<HelloWorld />)

console.log(output)

我提出了一个回购协议,以帮助在https://github.com/joelnet/mojo-gallery

进行调试

为此问题签出stack-overflow标签

1 个答案:

答案 0 :(得分:0)

尝试重命名.babelrc.yml => mv .babelrc.yml babel.config.json,然后再次运行npx babel-node src/build-html.js

相关问题