标签: jsdoc

如何使用 JSDoc 在 javascript 中转换 TypeScript 类型

当使用 TypeScript 检查 JavaScript 代码时,如何转换为与推断不同的类型?Typescript 具有<Type>as Type语法,但这些在 JavaScript 中无效。

/**
 * @param {{id: string, value: number}} details - object with required properties
 */
function stringifyObject(details) {
  return `${details.id}: ${details.value}`;
}

const testValue = {id: 'no-value'};
stringifyObject(testValue); // want to cast testValue to ignore missing property
stringifyObject(/** @type {any} */ testValue); // this doesn't work
Run Code Online (Sandbox Code Playgroud)

jsdoc typescript

30
推荐指数
2
解决办法
7775
查看次数

在reStructuredText中插入相对链接

我正在记录一个包含Python组件和JavaScript组件的库.整个用户文档和Python API文档位于reStructuredText中,使用Sphinx进行处理.JavaScript API位于jsdoc中,并使用jsdoc-toolkit进行处理.主要输出格式为HTML.我是reST,Sphinx和jsdoc的新手.

我已经建立了一个构建系统,因此所有生成的html页面都被转储到一个目录树中.我现在需要在主页面(从reST生成)中插入生成的Javascript文档的链接.这需要是一个相对链接,因为文档可能位于不同安装的不同位置.reST将自动解析完整的URL,但我无法弄清楚如何使其插入相对链接.构造如:ref::doc:似乎没有帮助,因为他们希望目标是reST.

有任何想法吗?

documentation restructuredtext jsdoc

28
推荐指数
1
解决办法
5572
查看次数

如何使用jsdoc 3或jsdoc记录Require.js(AMD)模块?

我有两种类型的模块:

Require.js主文件:

    require.config({
      baseUrl: "/another/path",
      paths: {
        "some": "some/v1.0"
      },
      waitSeconds: 15,
      locale: "fr-fr"
    });


    require( ["some/module", "my/module", "a.js", "b.js"],
      function(someModule,    myModule) {
      }
    );
Run Code Online (Sandbox Code Playgroud)

调解员模式:

define([], function(Mediator){

var channels = {};
if (!Mediator) Mediator = {};  

Mediator.subscribe = function (channel, subscription) {   
  if (!channels[channel]) channels[channel] = [];
   channels[channel].push(subscription);
};

Mediator.publish = function (channel) {
  if (!channels[channel]) return;
  var args = [].slice.call(arguments, 1);
  for (var i = 0, l = channels[channel].length; i < l; i++) {
    channels[channel][i].apply(this, args);
  } …
Run Code Online (Sandbox Code Playgroud)

javascript jsdoc requirejs js-amd

27
推荐指数
3
解决办法
1万
查看次数

如何让JSDoc将我的param标记为jQuery对象?

我试图彻底评论我的JavaScript,我正在使用JSDoc.我有一个消耗jQuery对象的函数,我想将参数标记为这样.

目前,我有这个:

/**
 * Initializes a login object.
 * @param formEl {JQuery} The login form element on the page.
 */
var login = function(formEl){ ... }
Run Code Online (Sandbox Code Playgroud)

但JSDoc无法识别(或正确格式化)"JQuery"作为变量类型.有帮助吗?

javascript jquery jsdoc

27
推荐指数
1
解决办法
1万
查看次数

如何在ReactJS中做文档?

我需要创建我们在reactjs应用程序中定义的每个组件的doc文件.我正在寻找可用于创建任何扩展文档的npm,以便它可以提取代码,评论来自我的组件并将其更改为任何扩展名的文档.如何帮助我?我的问题与关于jsdoc的其他问题不同,因为我正在使用jsdoc在reactjs中查找文档.

javascript jsdoc reactjs

27
推荐指数
3
解决办法
2万
查看次数

如何使用JSDoc记录回调?

给定一个将回调函数作为参数的Javascript函数:

var myFunction = function(onSuccess, onFailure) {...}
Run Code Online (Sandbox Code Playgroud)

我如何记录onSuccess返回类型和参数?

jsdoc

26
推荐指数
1
解决办法
8511
查看次数

如何使用混合参数类型记录JSDoc?

当参数类型可以混合时,如何使用JSDoc在JavaScript中记录方法?

我在Dialog对象上有方法,我可以在其中显示HTML或我自己的Viewable对象.JSDoc方法如下所示:

/**
 * Can pass in viewable object, or some HTML element
 *
 * @param viewable viewable {Viewable} or HTML element {HTMLElement} or String {string}
 * @param {Boolean} cancelable is cancellable
 * @param title string or data object of String and Id {Title:String, Id:String} for setting HTML id value
 * @param {Array} actions array of functions actions display buttons on the bottom connecting to the passed in functions
 * @param {String} size mode. Can be mini,small,medium,large,maxi. Or …
Run Code Online (Sandbox Code Playgroud)

javascript jsdoc

26
推荐指数
2
解决办法
1万
查看次数

JSDoc中的文档集合(类型数组)返回值和参数

Array当数组元素可以是以下任何一个时,如何在JSDoc中记录返回值(和参数):

  • A型(例如String,Array).
  • 对象字面量.

javascript jsdoc

23
推荐指数
3
解决办法
1万
查看次数

枚举为JSDoc中的@param类型

是否可以使用枚举作为JSDoc @param类型声明,如下例所示?

/**
 * @enum { Number }
 */
var TYPES = {
    TYPE_A: 1,
    TYPE_B: 2
}

/**
 * @param { TYPES } type
 */
function useTypesEnum( type ) {

}
Run Code Online (Sandbox Code Playgroud)

如果我使用Eclipse之类的IDE等JavaScript,那么应该不会引发警告?

javascript ide jsdoc jsdoc3

22
推荐指数
4
解决办法
2万
查看次数

如何使用JSDoc记录函数返回的函数

我正在使用JSDoc进行参数文档.

很清楚如何记录参数类型many_prompts,但是记录它返回的函数的正确方法是什么?

/**
 * @param {Number} - number of times to prompt
 * @return {Function(prompt{Number})} - the returned function
 */
function many_prompts(count) {
  return function(prompt) {
    for(var i=0; i < count; i++) alert(prompt);
  }
}


//Example of use:
var y  =many_prompts(3);
y('Hello World');
Run Code Online (Sandbox Code Playgroud)

javascript jsdoc jsdoc3

22
推荐指数
3
解决办法
1万
查看次数