你好,
我在 React 应用程序的特定部分遇到了一些问题,错误为 E015。
以下是显示错误的一些行:
<ImagePreview key={el.id} {...el} />
错误显示在末尾的大于号中
<div className="panel-footer">
<h5>{this.state.image.description}</h5>
</div>
错误显示在 h5 标签末尾的大于号中
<Link to={"topics/"+e.id} key={e.id} className="list-group-item">
<h4>{e.name}</h4>
<p>{e.description}</p>
</Link>
错误显示在 h4 标签末尾的大于号中
我有 2.9.4 版并使用 VS Code 1.9 版。 生成的捆绑代码可以正常工作。
引起我注意的是,当代码更改为以下内容时,错误消失了:
<div className="panel-footer"><h5>
{this.state.image.description}
</h5></div>
希望有人可以给我一些关于这个的指示。
最好的,
罗德里戈。
JSHint 无法解析 JSX 语法,因此我认为您共享的源代码与提供给 JSHint 的代码不同。 但是,如果不进一步了解您的工具链,就很难说出这一点。 如果您可以分享 JavaScript 代码,那么我们应该能够提供帮助。
嗨,感谢您的快速回答!!
这是一个非常简单的反应生物板,它提出了同样的问题:
import React, { Component } from 'react';
export default class App extends Component {
render() {
return (
<div>React simple boilerplate</div>
);
}
}
这是它在 VS Code 上的外观图片。 如您所见,这是完整的文件,错误是相同的。
希望这些信息对您有所帮助。
最好的,
罗德里戈。
我可以在 JSHint.com 上重现该行为,但您报告的错误是
预期的。 JSHint 无法解析 JSX 语法,因此错误是
正确识别无效的 JavaScript。
不过,我还没有准备好结束这个问题,因为你的初始报告
表示以下输入没有产生错误:
<div className="panel-footer"><h5>
{this.state.image.description}
</h5></div>
虽然这可能是有效的 JSX 语法,但它不是有效的 JavaScript,我会
期望 JSHint 报告错误。 事实上,它并不表明您的
编辑器在传递代码之前正在对代码执行某种转换
到 JSHint。 很难说,因为我不知道你的编辑怎么样
配置为调用 JSHint。 你能研究一下这种整合是如何发生的吗
(可能通过一些插件),看看是否正在发生这种转变? 如果
所以,那么我们看到的错误可能仍然反映了 JSHint 本身的错误
(尽管它也可能是插件的问题)。
我会调查一下,一旦我有一些信息就会回来。
最好的,
罗德里戈。
对此有任何消息,@rhernandog 吗?
@jugglinmike抱歉,没有关于此的消息。
如您所见,我在扩展程序的存储库中提到了没有运气。 事实上,该扩展已近一年没有更新,自 9 月以来没有任何问题得到解答,所以我不太相信我们会得到关于此的答案。 创作者最关注的是 ESLint 扩展而不是 JSHint 扩展,就像 Neo 对架构师说的: _问题是选择_
您可以选择保持打开或关闭它。 如果有任何奇迹在回购中有答案,我会回来重新打开它。
感谢您的跟进。
最好的,
罗德里戈。
没有任何进一步的信息,我们在这里无能为力。 我认为我关于错误插件行为的理论是最可行的解释,所以我想根据这种解释继续进行,直到我们有理由怀疑。 正如你所说,我们可以在合适的时候/如果合适的话重新打开这个问题。
谢谢你回到我身旁!
我希望这个答案有帮助。
我面临着同样的问题。 原来它是由几个第三方扩展引起的。
嘿@jugglinmike ,我最近使用 JSHint 开发了 VS Code 扩展,并且可以对此有所了解。 它直接将整个文档作为一个字符串传递给 JSHINT javascript api,不进行任何转换。 代码
<div className="panel-footer"><h5>
{this.state.image.description}
</h5></div>
确实显示错误。 我不确定原作者在 .jsx 文件上运行它的意图是什么,但我想解决方案是让扩展解析文件并识别语法的 jsx 部分并在将它们传递给 JSHint 之前将它们设为空行.
我面临同样的问题......不知道如何处理这个
这里有同样的问题,或者它甚至不是问题......
禁用 JSHint 为我解决了这个问题。
如何禁用 jshint?
@JuanPabloSilva请检查一下。
https://github.com/aurelia/vscode-extension/issues/80#issuecomment -368266942
这个错误太烦人了,它使 jshint 无法使用。 是否有至少禁用此提示的选项?
这个错误太烦人了,它使 jshint 无法使用。 是否有至少禁用此提示的选项?
完全同意你@hiraditya
我们应该可以选择禁用这个特定的 jshint,但不能禁用整个扩展。
只需禁用 jshint,因为它与其他 vscode 包冲突。
谢谢,我删除了 jshint。然后一切正常。
我从我的 VS Code 扩展中卸载jshint
,然后这个问题就消失了。
最有用的评论
禁用 JSHint 为我解决了这个问题。