Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >回调函数的JSDoc链接

回调函数的JSDoc链接
EN

Stack Overflow用户
提问于 2015-01-23 12:44:23
回答 1查看 1.1K关注 0票数 2

我决定使用JSDoc来记录我正在做的一个项目。在阅读这里的使用指南和问题时,我仍然觉得我没有掌握JSDoc的一些核心概念,我在下面的示例中说明了我的无能:http://jsfiddle.net/zsbtykpv/

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 * @module testModule
 */

/**
 * @constructor
 */
var Test = function() {
    /**
     * @callback myCallback
     * @param {Object} data An object that contains important data.
     */

    /**
     * A method that does something async
     * @param  {myCallback} cb a callback function
     * @return {boolean} always returns true
     */
    this.method = function(cb) {
        doSomethingAsync(function(data) {
            cb(data);
        });
        return true;
    }

}

module.exports = Test;

在这里,我定义了一个模块,指示了一个构造函数,并记录了一个将回调作为其参数之一的方法。听起来非常简单,而且似乎遵循使用指南http://usejsdoc.org/设置的指导原则。

但由于某种超出我理解的原因(这可能是我不理解的核心概念),它将回调测试显示为testModule类的成员,而不是myCallback类。它不应该默认是类的成员而不是模块的成员吗?这似乎也阻止了JSDoc建立到回调定义的链接,这并不是很有趣。

现在我意识到,如果我要写:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 * @callback module:testModule~Test~myCallback
 * @param {Object} data An object that contains important data.
 */

/**
 * A method that does something async
 * @param  {module:testModule~Test~myCallback} cb a callback function
 * @return {boolean} always returns true
 */

我会得到我想要的行为。但这似乎是一种非常笨拙的方式,生成的链接远不美观。

很抱歉造成了很长时间的积累,并提前感谢您在我的文档工作中的帮助:)

EN

回答 1

Stack Overflow用户

发布于 2017-08-11 21:26:23

我也遇到过类似的问题。如果你想要更好看的链接,你可以随时在描述中添加一个{@link},并在@type中使用规范的名称,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 * @callback module:testModule~Test~myCallback
 * @param {Object} data An object that contains important data.
 */

/**
 * @param {myCallback} cb {@link module:testModule~Test~myCallback|myCallback}: a callback function
 * @return {boolean} always returns true
 */

我知道这有点令人沮丧,但它将myCallback记录为类的成员,而不是模块,并且链接看起来很好。

如果你真的想要@type中的链接,并且你不关心它是如何记录回调的,你也可以这样做,这样做不会那么冗长(这也是我决定为我的项目做的):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 * @callback myCallback
 * @param {Object} data An object that contains important data.
 */

/**
 * @param {module:testModule~myCallback} cb a callback function
 * @return {boolean} always returns true
 */

这将正确地链接到myCallback,并将其记录为模块的成员。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28110249

复制
相关文章
回调函数的工作机制 回调函数的用途
在一般人的眼中,对回调函数并不是十分的了解。实际上,在现在的互联网技术上这种函数有着十分重要的地位。这种函数不仅仅可以使得编程的效率大大提升,还是实现一些特殊功能的必须组成部分。那么什么是回调函数?这样的函数究竟有什么作用?下面就来为大家介绍一下。
用户8739405
2021/07/09
6.8K0
回调函数
什么是回调函数,上面的问题说的是不是很空洞,不是太形象,下面是知乎上的一位网友给的答案:
LiosWong
2018/10/29
3.8K0
回调函数
  有点类似模板的功能,可以使用函数指针作为参数,当调用函数时,使用void *进行传递参数,细致比较时,再用int *之类的进行强制转换。回调函数,其实就是在参数中定义函数,调用时,回到主函数去调用这个函数。仔细用法如下: 首先定义查找函数 Node * search_list(Node *node, void const *value, int (*compare)(void const *,void const *)){ while(node!=NULL){ if(compar
用户1154259
2018/01/17
3.3K0
回调函数
回调函数
原文链接:https://note.noxussj.top/?source=cloudtencent 什么是回调函数? 简单的来说,一个函数作为另外一个函数的参数,可以称为回调函数。这个理解其实不完全
菜园前端
2023/05/20
1.7K0
​29 - 回调函数和回调地狱
原文地址:https://dev.to/bhagatparwinder/callback-functions-callback-hell-79n
前端黑板报
2022/12/01
4.6K0
js函数的回调
以上只能回调没有参数的(除法你事先知道回调的函数的参数),如果函数有未知的函数,就不能如此简单的调用了。
全栈程序员站长
2022/08/25
4.5K0
回调函数的理解
把A理解成客户端,把B理解成服务器。 A要访问B,让B做事。但是B做的慢,于是B就先返回给A一个正在处理的状态,等处理完了再通知A处理结果,那么这个A通知B的手段就是回调了。通常为了加强适配性(因为服务器只有一个,而客户端有多个),客户端都会实现接口C,再把C注入到服务器,那么服务器对外提供带有参数C的方法即可。
全栈程序员站长
2022/08/09
1.6K0
了不起的回调函数
关于js的回调函数,在各大平台已经被写烂了,我也看了很多别的大神写的帖子,我也在想怎么可以比较明白的将这个东西讲明白,今天我就尝试一下,认真看完,相信是有一些用处的。 想搞明白回调函数之前,先看懂我下面说的这段话, 有几个概念需要搞明白js中的同步和异步,或者叫阻塞和延迟,这就是为什么同步的函数有概率卡死,说直白一些,同步就是代码由上而下执行,中间如果有问题,那就等着,直到问题解决掉代码才会接着执行,但是我们在写js的过程中,其实很少有这种情况,原因是js本身就是一个异步编程语言,所谓的异步就是你慢没
何处锦绣不灰堆
2023/01/14
1.2K0
回调函数案例
内置数据类型: #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> //回调函数---通用数组型打印案例 //参数1:数组首地址 参数2:数组中每个元素的大小 参数3:数组元素个数 参数4:回调函数对数组内容进行输出 void printArray(void* array, int size, int len, void(*MyPrint)(void *)) { //void*没有数组的概念,因此如果想通用可以用char*,如果用int*的话,打印字符串
大忽悠爱学习
2021/03/04
3.9K0
JavaScript回调函数
JavaScript中的回调函数是一种特殊类型的函数,它被传递给其他函数作为参数,并在特定的事件或条件发生时被调用。回调函数用于处理异步操作、事件处理、定时器等情况,以确保代码在合适的时机执行。在JavaScript中,回调函数常用于处理非阻塞的操作,以避免程序的停顿和等待。
堕落飞鸟
2023/05/17
2.5K0
回调函数实践
之前我们写过一个冒泡排序,并且优化了它,但是他仅仅只能做升序,如果我们需要让他降序会有几种办法? 1.修改排序代码 2.回调函数 如果是第一种我们只需要 修改>变成<即可降序 #include<std
用户7272142
2023/10/11
1560
回调函数实践
JavaScript 回调函数
函数实际上是对象:它们能被“存储”在变量中,能作为函数参数被传递,能在函数中被创建,能从函数中返回;
鱼找水需要时间
2023/02/16
2.8K0
JavaScript回调函数
JavaScript API里这样解释:A callback is a function that is passed as an argument to another function and is executed after its parent function has completed. (回调是一个函数作为参数传递给另一个函数,其母函数完成后执行。) 使用回调函数的原因:可以把调用者与被调用者分开。调用者不关心谁是被调用者,所有它需知道的,只是存在一个具有某种特定原型、某些限制条件(如返回值为int)的被调用函数。
奋飛
2019/08/15
2.3K0
JavaScript回调函数
JavaScript的回调函数大概是JavaScript中使用最广泛的函数编程技术了,我们几乎可以在任何脚本中看到它的身影。
wade
2020/04/23
1.6K0
Flex回调函数
本文介绍了Flex回调函数的基本概念、实现方式和应用实例。通过实例,文章阐述了回调函数在事件处理、组件交互和跨域请求等方面的应用。同时,文章还提供了实现回调函数的基本步骤和注意事项,以帮助读者更好地理解回调函数的作用和实现方式。
高爽
2017/12/28
1.5K0
javaScript回调函数
回调函数,或简称回调,是指通过函数参数传递到其它代码的,某一块可执行代码的引用。这一设计允许了底层代码调用在高层定义的子程序。
用户6167509
2019/09/04
3.6K1
回调函数callbacks
tf.keras的回调函数实际上是一个类,一般是在model.fit时作为参数指定,用于控制在训练过程开始或者在训练过程结束,在每个epoch训练开始或者训练结束,在每个batch训练开始或者训练结束时执行一些操作,例如收集一些日志信息,改变学习率等超参数,提前终止训练过程等等。
lyhue1991
2020/07/20
1.9K0
回调函数callbacks
回调函数(CallBack)
需求:选择合同后,带回合同的信息(合同名称,供应商名称,联系人) 第一个图为:AddDdSp.html(新增定点商品) 第二个图为:SelectDdht.html(选择定点合同) 点击“选择”时触发j
qubianzhong
2018/09/19
2K0
回调函数(CallBack)
Python回调函数的实现
回调函数就是一个通过函数名调用的函数。如果你把函数的名字(地址)作为参数传递给另一个函数,当这个参数被用来调用其所指向的函数时,我们就说这是回调函数.
Python碎片公众号
2021/02/26
3.9K0
Python回调函数的实现
js的回调函数详解
在Javascript中,函数是第一类对象,这意味着函数可以像对象一样按照第一类管理被使用。既然函数实际上是对象:它们能被“存储”在变量中,能作为函数参数被传递,能在函数中被创建,能从函数中返回。 因为函数是第一类对象,我们可以在Javascript使用回调函数。在下面的文章中,我们将学到关于回调函数的方方面面。回调函数可能是在Javascript中使用最多的函数式编程技巧,虽然在字面上看起来它们一直一小段Javascript或者jQuery代码,但是对于许多开发者来说它任然是一个谜。在阅读本文之后你能了解
java达人
2018/01/31
5.9K0

相似问题

如何使用JSDoc记录回调?

10

VS代码中的jsDoc @回调

13

没有回调的链接函数

10

将对象数组记录为JSDoc中回调函数的参数

23

typedoc/jsdoc文档通用参数(回调参数)

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文