在使用JSX Harmony时,如何使WebStorm调整结束标记的缩进以匹配其父级?

时间:2015-10-23 18:07:10

标签: intellij-idea webstorm jsx

我尝试从Visual Studio 2015切换到IntelliJ WebStorm 10.0.4。

经过一些谷歌搜索后,我发现我需要将JavaScript语言切换到JSX Harmony才能使JSX语法正常工作。

现在,我发现结束标签的缩进正在成为一种真正的痛苦。

例如,如果我编写以下内容,当我关闭<div>标记时,它会将它放在缩进级别的下一行。这没关系,但我希望一旦我完成标签,它就会自动调整到与其匹配的开始标签相同的缩进级别。这是Visual Studio 2015中的行为。

'use strict';

var React = require('react');

var MyComponent = React.createClass({
    render: function () {
        return (
            <div>
                </div> //The indentation is wrong here after completing the tag.
        );
    }
});

module.exports = MyComponent;

enter image description here

我知道我可以用 Ctrl + Alt + L 重新格式化代码,但我不想一直这样做。

我已经尝试过JSLint和JSHint,但他们似乎并不能很好地支持JSX。我也尝试过ESLint,但它看起来有点儿麻烦,而且,也没有解决这个问题(应该吗?)。

我是否错误地配置了某些内容? 有没有办法在WebStorm中配置此行为?

1 个答案:

答案 0 :(得分:0)

我认为有两种解决方案:

简单的方法是输入<div,然后IDE会显示选项。你选择&#34; div&#34;这个,已经完成了。

另一种方法是生成一个&#34; Live模板&#34;在WebStorm首选项中。您可以使用代码段而不是输入那么多内容。您也可以使用Google&#34;如何使用实时模板&#34;后面。