应该可以强制执行像 else/catch 语句这样的尾随块头的位置:
目前这是预期的:
if (myVar) {
//...
} else {
//...
}
否则,您会收到“其他位置错位”警告。
但是我们希望尾随块碰到这样的一行:
if (myVar) {
//...
}
else {
//...
}
或尝试/捕获
try {
//..
}
catch (e) {
//..
}
finally {
//..
}
所有其他类似的结构。
我们发现它更容易阅读,因为关键字在左边距很紧,并且右大括号的位置强制使用几乎空白的行,就像在起始块中一样。
我可以使用oneline
规则切换它。
我认为它应该被拆分为它自己的规则:它与 oneline 的“左大括号与它前面的表达式在同一行”不同。
当然,有道理。
将所有检查设为可选,由 5cd203aa3c4b2de96c8a33d8107e9a8444aa4348 修复
如果下一行大括号也是一个规则,那就太好了。 通过忽略“oneline”规则来解决它并不理想。
你能给我们举个例子说明你的意思吗,@eirikhm? 如果您希望大括号在下一行,为什么要启用单行规则?
让我澄清一下:
我想要一个规则来检查大括号是否在下一行,如果它们在同一行,它会抱怨。
据我所知,没有办法强制执行此操作。
有什么方法可以强制执行check-else
的相反操作吗? 我想强制执行以下样式:
if (expr) {
// code
}
else {
// code
}
并限制以下样式:
if (expr) {
// code
} else {
// code
}
编辑 - 这可以通过tslint-eslint-rules来完成
同意,为什么不将反向强制块添加到他们自己的行中?
有什么方法可以强制执行
check-else
的相反操作吗? 我想强制执行以下样式:if (expr) { // code } else { // code }
并限制以下样式:
if (expr) { // code } else { // code }
这是一个非常常见的要求 - 我刚刚发现 tslint 不支持它,我有点惊讶......我认为这正是 tslint 的用途?
@sam-s4s 见 #4534
哇,这几乎有点悲伤:(大声笑
最有用的评论
让我澄清一下:
我想要一个规则来检查大括号是否在下一行,如果它们在同一行,它会抱怨。
据我所知,没有办法强制执行此操作。