Как форсировать параметры JSDoc с помощью Eslint

Я бы хотел, чтобы наш линтер работал, когда в JSDoc отсутствуют некоторые параметры в нашем документе JS. Например, я могу заставить JSDoc жаловаться на отсутствующие параметры или возвращать теги, но не для public/private/static/classdesc или функции. Пример правильного кода:

/**
 * A cool function
 *
 * @param {function} fnCallback Callback to call after something cool
 * @public
 * @static
 * @function beCool
*/
Cool.beCool = function (fnCallback) {

Пример неверного кода:

/**
 * A cool function
 *
 * @param {function} fnCallback Callback to call after something cool
 * 
 */
 Cool.beCool = function (fnCallback) {

Правила выглядят так:

//
    // JSDoc
    //
    "require-jsdoc": ["error", {
        "require": {
            "FunctionDeclaration": false,
            "MethodDefinition": true,
            "ClassDeclaration": true,
            "ArrowFunctionExpression": true,
            "FunctionExpression": true
        }
    }],
    "valid-jsdoc": ["error", {
      "matchDescription": ".+",
      "prefer": { 
        "arg": "param", 
        "argument": "param", 
        "class": "class", 
        "return": "returns", 
        "virtual": "abstract" 
      },
      "preferType": { 
        "Boolean": "boolean", 
        "Number": "number", 
        "object": "Object", 
        "String": "string",
        "Any": "any",
        "Function": "function",
        "RegExp": "regexp",
        "date": "Date",
        "array": "Array",
        "promise": "Promise",
        "map": "Map"
      },
      "requireReturn": false,
      "requireReturnType": true,
      "requireParamDescription": true,
      "requireParamType": true
    }]

  }

0 ответов

Другие вопросы по тегам