vue/sort-keys
以与 order-in-components 兼容的方式强制排序键
此规则与核心 sort-keys 规则几乎相同,但它不会对顶级组件属性产生错误,从而允许使用 order-in-components
强制执行该顺序。
📖 规则详细信息
此规则强制许多字典属性按字母顺序排列,同时允许 order-in-components
、属性详细信息和其他类似字段不按字母顺序排列。
🔧 选项
json
{
"vue/sort-keys": ["error", "asc", {
"caseSensitive": true,
"ignoreChildrenOf": ["model"],
"ignoreGrandchildrenOf": ["computed", "directives", "inject", "props", "watch"],
"minKeys": 2,
"natural": false
}]
}
第一个选项是 "asc"
或 "desc"
。
"asc"
(默认) - 强制属性按升序排列。"desc"
- 强制属性按降序排列。
第二个选项是一个对象,它有 5 个属性。
caseSensitive
- 如果为true
,则强制属性按区分大小写的顺序排列。默认值为true
。ignoreChildrenOf
- 要忽略其子级的属性数组。默认值为["model"]
ignoreGrandchildrenOf
- 要忽略其孙子排序顺序的属性数组。默认值为["computed", "directives", "inject", "props", "watch"]
minKeys
- 指定对象应具有的最小键数,以便对象的未排序键产生错误。默认值为2
,这意味着默认情况下,所有具有未排序键的对象都会导致 lint 错误。natural
- 如果为true
,则强制属性按自然顺序排列。默认值为false
。自然顺序以人类排序的方式比较包含字母和数字组合的字符串。它基本上按数字排序,而不是按字母顺序排序。因此,数字 10 在自然排序中位于数字 3 之后。
在使用此规则时,您可能需要禁用正常的 sort-keys
规则。此规则将适用于纯 js 文件以及 Vue 组件脚本。
📚 进一步阅读
🚀 版本
此规则是在 eslint-plugin-vue v6.2.0 中引入的