将 JSDoc 与匿名对象和该对象的函数一起使用的正确方法

Correct way to use JSDoc with anonymous object and functions of this object

本文关键字:对象 一起 方法 函数 JSDoc      更新时间:2023-09-26

目前正在使用 Webstorm 的 Dojo (1.10) 和 ESRI API Javascript 项目中。

有一个接受小部件(对象/类)的函数,但由于 JSDoc,Webstorm 向我显示了一些警告。

法典:

/**
 * Init toolbar
 *
 * @param {Object} [options] - Toolbar options
 * @param {string} [options.title=Default title] - Main title
 * @param {ToolbarWidget} toolbarObj - Toolbar widget to set
 */
initToolbar: function(options, toolbarObj) {
  ...
  toolbarObj.set('title', _title);
}

第一个警告是在"工具栏Obj"上。我收到一条消息"未解析的变量或类型"。

这很容易解决。刚刚包含以下 JSDoc:

/**
 * A dojo widget (toolbar).
 * @typedef {Object} ToolbarWidget
 */

现在,另一个警告是工具栏Obj的"设置"功能。我收到一条警告,其中包含以下消息:"未解析的函数或方法集()"。

已经尝试过@name,@function(也许不是以正确的方式)!

我知道这是可选的(只是一个警告),但是,我喜欢以正确的方式记录所有内容。那么,我如何记录匿名对象/道场小部件的"设置"功能?!

怎么样

/**
 * A dojo widget (toolbar).
 * @typedef  {Object} ToolbarWidget
 * @property {function} set 
 */