我有一些方法,比如:
// 1. two methods chained
first.method().anotherMethod();
// 2. three or more
second.method().anotherMethod().yetAnotherOne();
third.method().anotherMethod().yetAnotherOne().stillGoing();
第一种类型是可以的,可以保持这种方式。但我想知道是否有可能为第二种类型的所有方法断行,如:
// 1. two methods chained
first.method().anotherMethod();
// 2. three or more
second.method()
.anotherMethod()
.yetAnotherOne();
third.method()
.anotherMethod()
.yetAnotherOne()
.stillGoing();
Eslint有newline-per-chained-call
规则,但它不会强制我想要的行为。{ "ignoreChainWithDepth": 2 }
将允许我这样做:
second.method().anotherMethod()
.yetAnotherOne();
third.method().anotherMethod()
.yetAnotherOne()
.stillGoing();
但这并不理想。
有办法管理吗?
我试过newline-per-chained-call
与{ "ignoreChainWithDepth": 2 }
选项,并寻找插件。没有找到任何插件。
1条答案
按热度按时间qkf9rpyu1#
您可以使用ESLint中的数组-元素-换行符规则来强制执行长方法链的换行符。
此规则通常用于强制数组中的换行符,但也可用于强制方法调用链中的换行符。