Javascript IntelliJ如何在编写JSX时打开自动{}

Javascript IntelliJ如何在编写JSX时打开自动{},javascript,reactjs,intellij-idea,jsx,Javascript,Reactjs,Intellij Idea,Jsx,我在IntelliJ中与React合作,遇到了一个恼人的问题。编写JSX时(例如在渲染中),IntelliJ会在我按enter/autocomplete属性时自动插入两个{} 例如,在编写以下JS代码时: const SomeCompenent = () => { return ( <div className="someClassName"> ) }; constsomecompent=()=>{ 返回( ) }; IntelliJ自动写入

我在IntelliJ中与React合作,遇到了一个恼人的问题。编写JSX时(例如在渲染中),IntelliJ会在我按enter/autocomplete属性时自动插入两个{}

例如,在编写以下JS代码时:

const SomeCompenent = () => {
    return (
        <div className="someClassName">
    )
};
constsomecompent=()=>{
返回(
)
};
IntelliJ自动写入
className={}

它假设我总是使用需要{}语法的道具。但是,它使用了所有不必要的{},降低了代码(imo)的可读性

我在文件->设置->编辑器->常规->智能钥匙中尝试了一些不同的设置,但没有效果


希望有人能提供帮助。

IntelliJ仍然没有在UI中公开JSX属性样式,但事实证明您可以手动编辑配置文件。这在IntelliJ Ultimate 2020.3中对我有效:

  • 将代码样式方案切换为存储在项目中
  • /.idea/codeStyles/FoobarSchemeName.xml
    打开配置文件
  • JSCodeStyleSettings
    下添加
    条目,以默认设置为
    ,而不是字符串道具的
    {
    ,或者
    value=“None”
    既不追加
    也不追加
    {
  • 重新启动IntelliJ。仅仅重新打开项目对我来说是不够的
  • 如果缺少
    JSCodeStyleSettings
    ,请按如下方式添加它:

    
    
    我对IntelliJ不太清楚,但我会提到它在Webstorm中的情况,因为它可能是一样的。如果你进入设置->编辑器->代码样式->HTML,底部有一个配置选项,上面写着“为JSX属性添加”。你可以根据类型将它设置为引号、大括号(它将使用在PropTypes中设置的内容)谢谢,不幸的是,IntelliJ中的HTML/XML下没有这样的选项