tslint - 最后一行缺少尾随逗号(尾随逗号)
Posted
技术标签:
【中文标题】tslint - 最后一行缺少尾随逗号(尾随逗号)【英文标题】:tslint - Missing trailing comma (trailing-comma) on the last line 【发布时间】:2019-02-12 13:18:54 【问题描述】:我不明白为什么我的tslint
甚至想在objects
的最后一行末尾看到尾随逗号?例如,如何为对象的最后一行设置ignore
规则?谢谢。
示例:
props =
prop1: 21, // good
prop2: 2, // good
prop3: false // error: [tslint] Missing trailing comma (trailing-comma)
trailing-comma
在我的tsconfig.json
中的规则:
"trailing-comma": [true,
"singleline": "never",
"multiline":
"objects": "always",
"arrays": "always",
"functions": "never",
"typeLiterals": "ignore"
]
【问题讨论】:
【参考方案1】:您显然为多行对象启用了规则:
"trailing-comma": [true,
"singleline": "never",
"multiline":
"objects": "always", // <==================
"arrays": "always",
"functions": "never",
"typeLiterals": "ignore"
]
所以...通过设置"never"
(如果您想在此处禁止逗号)或"ignore"
(如果您希望允许逗号存在或不存在,无论哪种方式)来禁用它。
【讨论】:
哦,但是在这种情况下,我们将完全禁用trailing commas
为 object
,而不是只禁用其中的最后一行。不是吗?
@MaxTravis - 该规则适用于最后一个属性,而不是每一行。对于 between 属性,您别无选择。
谢谢,但要明确的是,如果我将 "objects": "always"
设置为 never
或 ignore
它将禁用整个对象的这个 tslint 规则,这是不正确的......它将是: props = prop1: 21, prop2: 2 prop3: false
- 上prop2
肯定是tslint 中的错误
@MaxTravis - prop2: 2 prop3: false
已经存在语法错误。这条规则与它无关。此规则纯粹是关于对象初始化程序上结束
之前的 last 属性之后的逗号。
哎呀,我现在明白你了。抱歉,从 .js 迁移到 .ts 后,我还是有点困惑!谢谢!【参考方案2】:
我在tslint.json
中解决了这个问题,如下所示:
"rules": "trailing-comma": false
【讨论】:
【参考方案3】:即使在最后一行也包含尾随逗号是减少合并冲突的好习惯,尽管它看起来很奇怪。
【讨论】:
以上是关于tslint - 最后一行缺少尾随逗号(尾随逗号)的主要内容,如果未能解决你的问题,请参考以下文章