使用eslint强制执行属性缩进?

时间:2015-11-18 16:10:46

标签: eslint

ESLint有dot-location规则,可以决定您是否愿意

object.
property

object
.property

打破点(我更喜欢后者)。

但是,我找不到规则来确保点与对象具有相同的缩进。特别是,我想为承诺链强制执行这种风格:

makePromiseSomehow()
.then(foo => bar(foo))
.catch(err => argh(err))

而不是

makePromiseSomehow().then(foo => bar(foo))
    .catch(err => argh(err))

所以,.then.catch在他们自己的行上与链启动器具有相同的缩进。

实现这一目标的任何指示?

2 个答案:

答案 0 :(得分:3)

缩进规则的MemberExpression选项调节多行属性链的缩进,并且它将promise链视为这样,因此将该选项设置为0允许并且需要相对于第一个缩进.then和.catch元素0链的元素。

答案 1 :(得分:1)

eslint尚未提供此功能。但是我们有很多问题可以解决这个问题。随意在项目中发送PR。