Visual Studio Code现在supports JSX on 0.8 version,但看起来激活它的唯一方法是使用.jsx
文件扩展名。手动更改语言模式不在列表中,最近的选项是JavaScriptReact
,但它不解析JSX标记。
我在一个带有JSX的很多.js
文件的项目中,我无法改变它。
有没有其他方法可以在没有.jsx
扩展的情况下使用JSX语法?
更改您的用户设置或工作区设置,如下所示:
// Place your settings in this file to overwrite the default settings
{
"files.associations": {
"*.js": "javascriptreact"
}
}
注意:您可能需要重新启动VSCode。
我可以做到,但“不是React JS文件”也用JavaScriptReact模式显示。
我花了一些时间来解决这个问题但是 - JSX已经是Emmet的一部分 - 它是VS Code的一部分。我已经告诉Emmet(另外)在常规JS文件中提供JSX片段。
只需将其放入您的设置文件中:
"emmet.syntaxProfiles": {
"javascript": "jsx"
}
现在有一个VS Code extension that allows .js
files to be treated as .jsx
files。
不幸的是,扩展的自述文件也警告:
安装此扩展时,您将失去为.js文件提供的所有现有语言支持
幸运的是,VS Code现在非常接近adopting Salsa,这意味着js-is-jsx问题应该很快得到彻底解决。
尽管Dionys的答案有效,但在更新版本的Visual Studio Code中有更好的方法。
转到File>Prefrences>Settings
,然后向下滚动并找到“Emmet”打开选项卡,您应该看到以下文本
// Enable Emmet abbreviations in languages that are not supported by default. Add a
mapping here between the language and emmet supported language.
// E.g.: {"vue-html": "html", "javascript": "javascriptreact"}
"emmet.includeLanguages": {},
因此,只需按照说明操作,在右侧面板的json上添加"emmet.includeLanguages": { "javascript": "javascriptreact" }
(这将覆盖用户设置)。
只需安装扩展程序:
资源:
https://code.visualstudio.com/docs/editor/extension-gallery?pub=TwentyChung&ext=jsx https://marketplace.visualstudio.com/items/TwentyChung.jsx
尝试在Mac或Linux上使用链接。
ln -s index.ios.js index.ios.jsx