在我的tslint.json
中,我将object-literal-sort-keys
定义为match-declaration-order
:
{
"defaultSeverity": "error",
"extends": [
"tslint:recommended"
],
"jsRules": {},
"rules": {
"no-console": false,
"object-literal-sort-keys": [
true,
"match-declaration-order"
],
"max-line-length": [
true,
200
],
"typedef": [
true,
"member-variable-declaration",
"variable-declaration"
]
},
"rulesDirectory": []
}
然而,我总是得到这个错误:
object-literal-sort-keys needs type info to use "match-declaration-order" or
"match-declaration-order-only".
See https://palantir.github.io/tslint/usage/type-checking/ for documentation on
how to enable this feature.
我尝试过文档中显示的示例,但它们并不能解决问题。消除这个错误的唯一方法是使用object-literal-sort-keys
默认设置,但之后我必须按字母顺序对所有数组进行排序。
我必须如何配置object-literal-sort-keys
才能消除此错误?
对象文字排序键规则的选项"match-declaration-order"
要求tslint具有类型信息,因为它需要根据其定义的类型检查对象文字。要做到这一点,tslint需要知道同一应用程序中使用的tsconfig.json
文件。这可以作为标志--project
或--p
来提供。完整的命令如下所示:
npx tslint -p tsconfig.json -c tslint.json
这将为项目编译的每个文件进行lint。