gpt4 book ai didi

source-maps - `Invalid mapping` 尝试使用 babel require hook 和 polyfill 以及 React jsx transpile 时出错

转载 作者:行者123 更新时间:2023-12-03 13:37:50 25 4
gpt4 key购买 nike

我正在尝试使用 babel 进行 ES6 和 JSX 转译来进行摩卡测试。

假设我们有这样的test.jsx:

var React = require("react");
React.createClass({
render: function(){
return (<div>Hello World</div>);
}
});

运行 babel test.jsx 为我们提供了有效的转换代码。没问题。

我希望如果我创建一个像这样的 test.js 文件:

require("babel/register");
require("./test.jsx");

然后运行node test.js,它会在线为我转译我的jsx,但我收到一个错误:

c:\Users\user\dev\app\node_modules\babel\node_modules\babel-core\lib\babel\t
ransformation\file\index.js:628
throw err;
^
Error: c:/Users/user/dev/app/test.jsx: Invalid mapping: {"generated":{"line"
:6,"column":11},"source":"c:/Users/user/dev/app/test.jsx","name":null}
at SourceMapGenerator_validateMapping [as _validateMapping] (c:/Users/user/dev/app/node_modules\babel\node_modules\source-map\lib\source-map\source-map-
generator.js:275:15)
at SourceMapGenerator_addMapping [as addMapping] (c:/Users/user/dev/app/
node_modules\babel\node_modules\source-map\lib\source-map\source-map-generator.j
s:105:14)
at SourceMap.mark (c:/Users/user/dev/app/node_modules\babel\node_modules
\babel-core\lib\babel\generation\source-map.js:65:9)
at CodeGenerator.print (c:/Users/user/dev/app/node_modules\babel\node_mo
dules\babel-core\lib\babel\generation\index.js:236:16)
at NodePrinter.plain (c:/Users/user/dev/app/node_modules\babel\node_modu
les\babel-core\lib\babel\generation\node\printer.js:16:27)
at CodeGenerator.ReturnStatement (c:/Users/user/dev/app/node_modules\bab
el\node_modules\babel-core\lib\babel\generation\generators\statements.js:120:13)

at CodeGenerator.print c:/Users/user/dev/app/node_modules\babel\node_mo
dules\babel-core\lib\babel\generation\index.js:238:22)
at NodePrinter.plain (c:/Users/user/dev/app/node_modules\babel\node_modu
les\babel-core\lib\babel\generation\node\printer.js:16:27)
at CodeGenerator.printJoin (c:/Users/user/dev/app/node_modules\babel\nod
e_modules\babel-core\lib\babel\generation\index.js:286:13)
at NodePrinter.sequence (c:/Users/user/dev/app/node_modules\babel\node_m
odul

es\babel-core\lib\babel\generation\node\printer.js:23:27)

根据文档,看起来这应该可行。我是否遗漏了一些明显的东西,或者我应该将其报告为 babel 中的错误?

最佳答案

这是 a bug in acorn-jsx ,Babel 使用的 JSX 解析器。建议的修复方法是:

rm -rf node_modules/babel && npm install

关于source-maps - `Invalid mapping` 尝试使用 babel require hook 和 polyfill 以及 React jsx transpile 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30983668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com