Spec-Zone.ru › ESLint

max-len

Принудительное ограничение максимальной длины строки

Эта настройка была устарела в ESLint v8.53.0. Используйте соответствующее правило соответствующее правило в @stylistic/eslint-plugin-js.

Очень длинные строки кода на любом языке могут быть трудно читаемыми. Для повышения читабельности и поддерживаемости многие программисты разработали соглашение об ограничении длины строк кода до X символов (традиционно 80 символов).

var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

Подробное описание правила

Это правило принудительно устанавливает максимальную длину строки для повышения читабельности и поддерживаемости кода. Длина строки определяется количеством символов Юникода в строке.

Параметры

Это правило может принимать до двух числовых аргументов (для параметров code и tabWidth ), за которыми следует опция объекта (позиционные аргументы имеют приоритет):

  • "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 }:

Открыть в Playground
/*eslint max-len: ["error", { "code": 80 }]*/

var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

Примеры правильного кода для этого правила с опцией по умолчанию { "code": 80 }:

Открыть в Playground
/*eslint max-len: ["error", { "code": 80 }]*/

var foo = {
  "bar": "This is a bar.",
  "baz": { "qux": "This is a qux" },
  "easier": "to read"
};

tabWidth

Примеры неправильного кода для этого правила с опцией по умолчанию { "tabWidth": 4 }:

Открыть в Playground
/*eslint max-len: ["error", { "code": 80, "tabWidth": 4 }]*/

		var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

Примеры правильного кода для этого правила с опцией по умолчанию { "tabWidth": 4 }:

Открыть в Playground
/*eslint max-len: ["error", { "code": 80, "tabWidth": 4 }]*/

		var foo = {
				"bar": "This is a bar.",
				"baz": { "qux": "This is a qux" }
		};

комментарии

Примеры неправильного кода для этого правила с опцией { "comments": 65 }:

Открыть в Playground
/*eslint max-len: ["error", { "comments": 65 }]*/

/**
 * This is a comment that violates the maximum line length we have specified
**/

ignoreComments

Примеры правильного кода для этого правила с опцией { "ignoreComments": true }:

Открыть в Playground
/*eslint max-len: ["error", { "ignoreComments": true }]*/

/**
 * This is a really really really really really really really really really long comment
**/

ignoreTrailingComments

Примеры правильного кода для этого правила с опцией { "ignoreTrailingComments": true }:

Открыть в Playground
/*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/

var foo = 'bar'; // This is a really really really really really really really long comment

ignoreUrls

Примеры правильного кода для этого правила с опцией { "ignoreUrls": true }:

Открыть в Playground
/*eslint max-len: ["error", { "ignoreUrls": true }]*/

var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

ignoreStrings

Примеры правильного кода для этого правила с опцией { "ignoreStrings": true }:

Открыть в Playground
/*eslint max-len: ["error", { "ignoreStrings": true }]*/

var longString = 'this is a really really really really really long string!';

ignoreTemplateLiterals

Примеры правильного кода для этого правила с опцией { "ignoreTemplateLiterals": true }:

Открыть в Playground
/*eslint max-len: ["error", { "ignoreTemplateLiterals": true }]*/

var longTemplateLiteral = `this is a really really really really really long template literal!`;

ignoreRegExpLiterals

Примеры правильного кода для этого правила с опцией { "ignoreRegExpLiterals": true }:

Открыть в Playground
/*eslint max-len: ["error", { "ignoreRegExpLiterals": true }]*/

var longRegExpLiteral = /this is a really really really really really long regular expression!/;

ignorePattern

Примеры правильного кода для этого правила с опцией ignorePattern:

Открыть в Playground
/*eslint max-len:
["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(" }]*/

var dep = require('really/really/really/really/really/really/really/really/long/module');

Связанные правила

  • complexity
  • max-depth
  • max-nested-callbacks
  • max-params
  • max-statements

Версия

Это правило было добавлено в ESLint v0.0.9.

Ресурсы

  • Исходный код правила
  • Исходный код тестов

© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/max-len

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API