javascript - 我们如何使用 jsddoc 记录作为函数作为参数传入的回调返回值
问题描述
我目前使用当前的 jsdoc 语法记录了一个 javascript 函数和其他代码(我欢迎更改)
function exportStuff(dataObject) {
/**
*
* @param {Object} dataObject - some details about it
* @param {function} dataObject.animationStart
* @param {function} dataObject.ajax - when invoked, returns a promise/.thenable, but I want to know how to state that it does here in the jsdoc
* what if I tried:
* @callback {function} dataObject.ajax (not sure how to embed @param and @return here)
*
*/
}
https://jsdoc.app/tags-callback.html对我来说没有多大意义......但是在仔细研究之后......也许他们在他们的例子中意味着将参数类型定义为@param {requestCallback}
稍后作为单独的我们需要定义的注释,@callback requestCallback
并记录定义的@param 和@returns
我的问题有点不同,因为我想使用 jsdoc 样式,但也知道如何在一个地方(而不是单独)内联所有参数并返回传入函数的类型以用作回调(抱歉重复)
谢谢你的时间!
干杯
解决方案
该function
类型的工作方式如下:
function({paramTypes}):returnType
例如;
不返回任何内容的事件处理程序;
@param {function({Event}):void}
标准sum
方法:
@param {function({number}, {number}):number}
this
可以使用以下方式指定预期类型:
@param {function(this:Foo):void}
类型的结果new
可以通过以下方式指定:
@param {function(new:Foo):void}
您还可以传播操作:
@param {function(string, ...number): number}
可选 with=
并且可以为 null with ?
:
@param {function(?string=, number=)}
- 通过闭包类型系统中的类型。
推荐阅读
- c++ - 类设计所需的建议 - 在线程中填充向量或返回未来
- php - PHP代码无法显示来自mysql数据库的数据
- javascript - 尝试使用 Python、Ajax 调用和 Javascript 将字段从 MongoDB 填充到 HTML 时收到 JSON 错误
- proxy - 我的网络应用在 TOR 上真的很慢,在网络代理上无法使用
- java - How to get and show a value from an AsyncTask?
- parallel-processing - 如何使用 openmp 并行 biginteger?
- mongodb - MongoDB 副本集仲裁配置(网络分区行为)
- android - 使用 Kotlin 向 android View 添加自定义属性?
- postgresql - Postgres docker 有未知用户
- leaflet - Leaflet.js 路径笔画偏移