Eslint参考手册
规则 | Rules
max-len
任何语言的非常长的代码行都很难阅读。为了提高可读性和可维护性,许多编码人员已经制定了将代码行限制为 X 个字符(传统上为80个字符)的约定。
var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long
规则细节
此规则强制执行最大行长度以增加代码的可读性和可维护性。一行的长度定义为该行中的 Unicode 字符数。
选项
此规则有一个数字或对象选项:
-
"code"
(默认80
)强制执行最大行长度
-
"tabWidth"
(默认4
)指定制表符的字符宽度
-
"comments"
为注释强制执行最大行长度; 默认值为code
-
"ignorePattern"
忽略与正则表达式匹配的行; 只能匹配单行,并且在使用 YAML 或 JSON 编写时需要双重转义
-
"ignoreComments": true
忽略他们自己的行中的所有尾随评论和评论
-
"ignoreTrailingComments": true
只会忽略尾随评论
-
"ignoreUrls": true
忽略包含 URL 的行
-
"ignoreStrings": true
忽略包含双引号或单引号字符串的行
-
"ignoreTemplateLiterals": true
忽略包含模板文字的行
-
"ignoreRegExpLiterals": true
忽略包含 RegExp 文字的行
代码
此规则的默认代码错误代码示例{ "code": 80 }
:
/*eslint max-len: ["error", 80]*/
var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };
具有默认选项的此规则的正确代码示例{ "code": 80 }
:
/*eslint max-len: ["error", 80]*/
var foo = {
"bar": "This is a bar.",
"baz": { "qux": "This is a qux" },
"easier": "to read"
};
tabWidth
此规则的默认代码错误代码示例{ "tabWidth": 4 }
:
/*eslint max-len: ["error", 80, 4]*/
\t \t var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };
具有默认选项的此规则的正确代码示例{ "tabWidth": 4 }
:
/*eslint max-len: ["error", 80, 4]*/
\t \t var foo = {
\t \t \t \t "bar": "This is a bar.",
\t \t \t \t "baz": { "qux": "This is a qux" }
\t \t };
comments
此规则的错误代码示例包含以下{ "comments": 65 }
选项:
/*eslint max-len: ["error", { "comments": 65 }]*/
/**
* This is a comment that violates the maximum line length we have specified
**/
ignoreComments
此规则的正确代码示例包含以下{ "ignoreComments": true }
选项:
/*eslint max-len: ["error", { "ignoreComments": true }]*/
/**
* This is a really really really really really really really really really long comment
**/
ignoreTrailingComments
此规则的正确代码示例包含以下{ "ignoreTrailingComments": true }
选项:
/*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
var foo = 'bar'; // This is a really really really really really really really long comment
ignoreUrls
此规则的正确代码示例包含以下{ "ignoreUrls": true }
选项:
/*eslint max-len: ["error", { "ignoreUrls": true }]*/
var url = 'https://www.example.com/really/really/really/really/really/really/really/long';
ignoreStrings
此规则的正确代码示例包含以下{ "ignoreStrings": true }
选项:
/*eslint max-len: ["error", { "ignoreStrings": true }]*/
var longString = 'this is a really really really really really long string!';
ignoreTemplateLiterals
此规则的正确代码示例包含以下{ "ignoreTemplateLiterals": true }
选项:
/*eslint max-len: ["error", { "ignoreTemplateLiterals": true }]*/
var longTemplateLiteral = `this is a really really really really really long template literal!`;
ignoreRegExpLiterals
此规则的正确代码示例包含以下{ "ignoreRegExpLiterals": true }
选项:
/*eslint max-len: ["error", { "ignoreRegExpLiterals": true }]*/
var longRegExpLiteral = /this is a really really really really really long regular expression!/;
ignorePattern
此规则的正确代码示例包含以下ignorePattern
选项:
/*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\(" }]*/
var dep = require('really/really/really/really/really/really/really/really/long/module');
Related Rules
- complexity
- max-depth
- max-nested-callbacks
- max-params
- max-statements
版本
该规则在 ESLint 0.0.9 中引入。
资源
- Rule source
- Documentation source
规则 | Rules相关
ESLint 是一个代码规范和错误检查工具,有以下几个特性。所有东西都是可以插拔的。你可以调用任意的 rule api 或者 formatter api 去打包或者定义 rule or formatter。任意的 rule 都是独立的。没有特定的 coding style,你可以自己配置。
主页 | https://eslint.org/ |
源码 | https://github.com/eslint/eslint |
发布版本 | 4.12.0 |