eslint - ESLint "Unexpected token)" 也掩盖了文件中的其他问题
问题描述
我在 React 项目中与 Prettier 一起实现 ESLint,下面的代码给出了令人沮丧的解析错误。
ReactDOM.render(
<TierComparisonApp {...tier_comparison_app.dataset} />,
document.getElementById('tier_comparison_app'),
); <-- Parsing error: Unexpected token )
奇怪的是,当我在第二个参数传递给 之后删除逗号时render
,该解析错误消失了,揭示了缺少该逗号的预期问题,tier_comparision_app
以及未定义的另一个问题。
ReactDOM.render(
<TierComparisonApp {...tier_comparison_app.dataset} />, <-- (correctly caught as undefined)
document.getElementById('tier_comparison_app') <-- (correctly saying to insert a comma)
);
更奇怪的是,进行上述更改还揭示了文件中更早的问题与使用==
而不是有关===
,这也是预期的行为。关于可能导致这种情况的任何想法?我创建了我的 Pastebin,.eslintrc.json
因为它的规则有点密集。
解决方案
因此,在写完这篇文章后,我立即意识到我没有在我的文件中设置我parser
的,因此:babel-eslint
.eslintrc.json
"parser": "babel-eslint",
非常直接的解决方案,并且完全理解 ESLint 为何会遇到解析问题。显然,您需要babel-eslint
使用您最喜欢的包管理器进行安装。我会向其他遇到他们没想到的解析问题的人推荐这个,希望我仍然发布这个答案可以对下线的人有所帮助。
推荐阅读
- javascript - 使用JavaScript计算两个给定点的方位角?
- javascript - lodash 构造函数的正确导入是什么?
- reactjs - 当父状态更改而不重新渲染子状态时,如何使用 npm 'react-youtube' 调用 event.target.playVideo()?
- laravel-5 - 如何在保存的同时将主键值存储到外键
- sql - 在高负载下收到奇怪的 SQL 连接错误
- javascript - 当我尝试启动我的反应应用程序时,我遇到了一个不寻常的错误。它说 CleanWebpackPlugin 不是构造函数
- excel - 如何克服错误 1004 对象 _global 范围失败
- react-native - TypeError:undefined is not a function(评估'store.getState()')
- c++ - 如何在现代 GLSL 中使用点精灵绘制非均匀缩放的 3D 球体(椭圆体)?
- java - 标有 ==$0 的硒重复元素