This rule enforces minimum number of newlines before JSDoc comment blocks (except at the beginning of a block or file).
Whether to additionally check the start of blocks, such as classes or functions.
Defaults to false
.
The minimum number of lines to require. Defaults to 1.
This option excludes cases where the JSDoc block occurs on the same line as a
preceding code or comment. Defaults to true
.
An array of tags whose presence in the JSDoc block will prevent the
application of the rule. Defaults to ['type']
(i.e., if @type
is present,
lines before the block will not be added).
Context | everywhere |
Tags | N/A |
Recommended | false |
Settings | |
Options | checkBlockStarts , excludedTags , ignoreSameLine , lines |
The following patterns are considered problems:
someCode;
/**
*
*/
// Message: Required 1 line(s) before JSDoc block
someCode; /**
*
*/
// "jsdoc/lines-before-block": ["error"|"warn", {"ignoreSameLine":false}]
// Message: Required 1 line(s) before JSDoc block
someCode; /** */
// "jsdoc/lines-before-block": ["error"|"warn", {"ignoreSameLine":false}]
// Message: Required 1 line(s) before JSDoc block
someCode;
/**
*
*/
// "jsdoc/lines-before-block": ["error"|"warn", {"lines":2}]
// Message: Required 2 line(s) before JSDoc block
// Some comment
/**
*
*/
// Message: Required 1 line(s) before JSDoc block
/* Some comment */
/**
*
*/
// Message: Required 1 line(s) before JSDoc block
/**
* Some comment
*/
/**
*
*/
// Message: Required 1 line(s) before JSDoc block
{
/**
* Description.
*/
let value;
}
// "jsdoc/lines-before-block": ["error"|"warn", {"checkBlockStarts":true}]
// Message: Required 1 line(s) before JSDoc block
class MyClass {
/**
* Description.
*/
method() {}
}
// "jsdoc/lines-before-block": ["error"|"warn", {"checkBlockStarts":true}]
// Message: Required 1 line(s) before JSDoc block
function myFunction() {
/**
* Description.
*/
let value;
}
// "jsdoc/lines-before-block": ["error"|"warn", {"checkBlockStarts":true}]
// Message: Required 1 line(s) before JSDoc block
const values = [
/**
* Description.
*/
value,
];
// "jsdoc/lines-before-block": ["error"|"warn", {"checkBlockStarts":true}]
// Message: Required 1 line(s) before JSDoc block
The following patterns are not considered problems:
/**
*
*/
someCode;
/**
*
*/
someCode;
/**
*
*/
// "jsdoc/lines-before-block": ["error"|"warn", {"lines":2}]
// Some comment
/**
*
*/
/* Some comment */
/**
*
*/
/**
* Some comment
*/
/**
*
*/
someCode; /** */
const a = {
someProp: /** @type {SomeCast} */ (someVal)
};
const a = /** @lends SomeClass */ {
someProp: (someVal)
};
// "jsdoc/lines-before-block": ["error"|"warn", {"excludedTags":["lends"],"ignoreSameLine":false}]
{
/**
* Description.
*/
let value;
}
class MyClass {
/**
* Description.
*/
method() {}
}
function myFunction() {
/**
* Description.
*/
let value;
}