使用 eslint 强制缩进属性?
Enforcing indentation of properties with 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
在各自的行中,缩进与链启动器相同。
任何实现此目标的指示?
eslint 尚不可用。但是我们有很多未解决的问题来处理这种情况。欢迎发送关于该项目的 PR。
缩进规则的 MemberExpression 选项规定了多行 属性 链的缩进,并将承诺链视为这样,因此将该选项设置为 0 允许并要求 .then 和 . 的缩进为 0。捕获相对于链中第一个元素的元素。
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
在各自的行中,缩进与链启动器相同。
任何实现此目标的指示?
eslint 尚不可用。但是我们有很多未解决的问题来处理这种情况。欢迎发送关于该项目的 PR。
缩进规则的 MemberExpression 选项规定了多行 属性 链的缩进,并将承诺链视为这样,因此将该选项设置为 0 允许并要求 .then 和 . 的缩进为 0。捕获相对于链中第一个元素的元素。