我有最新版本的Visual Studio代码(1.75.1)。我使用“太阳能黑暗”的颜色主题。
我有一个html文件,标签内有React Javascript代码。
如果我将语言选择保留为“HTML”,则脚本标记内的任何内容都不会着色:
如果我使用“JavaScript React”或“Babel Javascript”作为语言模式,我会得到错误高亮显示,但不是错误,智能感知也不太好用:
我试着把主题改成黑暗+,也没有什么不同。
为什么会发生这种情况?
我有最新版本的Visual Studio代码(1.75.1)。我使用“太阳能黑暗”的颜色主题。
我有一个html文件,标签内有React Javascript代码。
如果我将语言选择保留为“HTML”,则脚本标记内的任何内容都不会着色:
如果我使用“JavaScript React”或“Babel Javascript”作为语言模式,我会得到错误高亮显示,但不是错误,智能感知也不太好用:
我试着把主题改成黑暗+,也没有什么不同。
为什么会发生这种情况?
1条答案
按热度按时间jvlzgdj91#
这是因为您将脚本标记中的
type
属性设置为"text/jsx"
(这本身没有什么错)。目前(在撰写本文时,v1.75),VS Code仅支持对没有
type
属性、type="module"
、type="text/javascript"
、type="application/javascript"
或类似属性的脚本标记进行JavaScript智能感知。当前不支持
type="text/jsx"
。在VS Code GitHub repo上报告了两个关于此问题的问题:Syntax highlighting doesn't work with "text/jsx" script tags #150171和Syntax highlighting for text/jsx #145992。在这两种情况下,a repo维护人员评论说,报告问题的正确位置是https://github.com/textmate/html.tmbundle/issues,现在已经报告了:Syntax for text/jsx inside HTML #119。注:请考虑 * 不要 * 在评论中评论“我也是”。我不能代表那个repo的维护者说话,但是对于许多项目维护者来说,这样的评论往往会让人感到厌烦,除非评论者实际上也自愿提供帮助。如果你不想花精力帮助实现这个特性,你可以给予大拇指。
为了让你掌握谷歌搜索的技巧,下面是我为找到这些东西而做的谷歌搜索查询:
vscode issues html script jsx
相关:How can I enable IntelliSense for JavaScript inside HTML?