配置ESLint括号中可选参数

问题描述 投票:0回答:1

如何配置 ESLint,使其检查 JSDoc 中是否写入了必需的参数(不带括号),以及是否将可选参数写入了括号?

示例

/**
 * Function params
 *
 * @property param1    good
 * @property [param2]  good
 * @property param3    bad
 * @property [param4]  bad
 */
interface Props {
  param1: boolean;
  param2?: boolean;
  param3?: boolean;
  param4: boolean;
}
typescript eslint jsdoc typescript-eslint
1个回答
0
投票

没有常用的 ESLint 规则来完成您所要求的操作。同时使用

@property
和 typeScript 通常并不是 TypeScript 开发人员通常采用的做法:

  • TypeScript 类型已经使用
    ?
  • 描述了属性是否可选
  • JSDoc 对接口属性的描述通常在属性本身上

问题的界面可能会写得更像:

/**
 * Function params
 */
interface Props {
  /**
   * Either a multi-line comment...
   */
  param1: boolean;

  /**
   * Either a multi-line comment...
   */
  param2?: boolean;

  /** Or a single-line one. */
  param3?: boolean;

  /** Or a single-line one. */
  param4: boolean;
}

如果您确实希望 ESLint 规则强制执行请求的行为,您可以使用typescript-eslint > 文档 > 自定义规则中描述的 API 来编写它。另请参阅 eslint-plugin-jsdoc 了解其他 JSDoc 规则的示例。

© www.soinside.com 2019 - 2024. All rights reserved.