Questions tagged «jsdoc»

JSDoc是一种标记语言,用于向JavaScript源代码添加内联API文档。这与解析和操作遵循JSDoc语法的代码的各种工具不同。

6
如何在jsdoc中描述“对象”参数?
// My function does X and Y. // @params {object} parameters An object containing the parameters // @params {function} callback The callback function function(parameters, callback) { } 但是如何描述参数对象的结构?例如,应该是这样的: { setting1 : 123, // (required, integer) setting2 : 'asdf' // (optional, string) }
316 javascript  jsdoc 

3
JSDoc:返回对象结构
如何将返回的对象的结构告诉JSDoc。我找到了@return {{field1: type, field2: type, ...}} description语法并尝试了它: /** * Returns a coordinate from a given mouse or touch event * @param {TouchEvent|MouseEvent|jQuery.Event} e * A valid mouse or touch event or a jQuery event wrapping such an * event. * @param {string} [type="page"] * A string representing the type of …

4
如何使用内联JSDoc指示参数是可选的?
根据JSDoc Wiki的@param,您可以使用指示@param是可选的 /** @param {String} [name] */ function getPerson(name) { } 您可以指示设置了一个param 在线使用 function getPerson(/**String*/ name) { } 而且我可以像下面这样组合它们,效果很好。 /** @param [name] */ function getPerson(/**String*/name) { } 但是我想知道是否有可能在可能的情况下全部内联。

1
如何在JSDoc中指定对象数组作为参数或返回值?
在JSDoc中,如果您具有特定类型的数组(例如字符串数组),则我可以找到的最佳文档显示使用以下内容: /** * @param {Array.<string>} myStrings All my awesome strings */ function blah(myStrings){ //stuff here... } 您将如何替换以下问号来指定对象数组? /** * @param {???????} myObjects All of my equally awesome objects */ function blah(myObjects){ //stuff here... }

5
如何用有限的可能值在jsdoc中记录字符串类型
我有一个接受一个字符串参数的函数。此参数只能具有几个定义的可能值之一。记录相同内容的最佳方法是什么?应该将shapeType定义为enum还是TypeDef或其他? Shape.prototype.create = function (shapeType) { // shapeType can be "rect", "circle" or "ellipse"... this.type = shapeType; }; Shape.prototype.getType = function (shapeType) { // shapeType can be "rect", "circle" or "ellipse"... return this.type; }; 问题的第二部分是,在shapeType定义shapeType为您所建议的内容的文件中,未知的可能值。有几个开发人员提供的多个文件可能会增加的可能值shapeType。 PS:正在使用 jsdoc3

3
JSDoc中的文档分解功能参数
以前,我总是记录我的对象参数,如下所示: /** * Description of the function * * @param {Object} config - The configuration * @param {String} config.foo * @param {Boolean} [config.bar] - Optional value * @return {String} */ function doSomething (config = {}) { const { foo, bar } = config; console.log(foo, bar); // do something } 但是我不确定使用分散的函数参数最好的方法是什么。我只是忽略对象,以某种方式定义它还是记录它的最佳方法是什么? …


4
在JSDoc中记录开放式参数函数的正确方法
假设您有类似以下内容: var someFunc = function() { // do something here with arguments } 您如何正确记录该函数可以在JSDoc中接受任意数量的参数?这是我的最佳猜测,但我不确定这是正确的。 /** * @param {Mixed} [...] Unlimited amount of optional parameters */ var someFunc = function() { // do something here with arguments } 相关文档:php-如何记录可变数量的参数
82 javascript  jsdoc 

4
如何在JsDoc中返回void?
有没有指定的方法来声明方法或函数以在JsDoc中返回void?目前,我认为这void是默认返回值,并且必须专门提供其他返回值: /** * @return {Integer} The identifier for ... */
80 javascript  ide  jsdoc 

2
如何在JSDoc中记录字典?
下一个例子: var CONF = { locale: { "en": { name: "English", lang: "en-US" }, "es": { name: "Spanish", lang: "es-ES" } } }; 并且知道语言环境属性包含的是来自数据库的字典对象,如何使用JSDoc记录其内部属性? 目前,我正在考虑typedef 为语言环境对象键入内容,那么我是否可以将locale属性设置为简单地定义类型的Array?这是正确的方法吗?

4
用jsdoc记录回调的正确方法是什么?
我已经花了相当长的时间在互联网上寻找可使用jsdoc正确记录回调的最佳方法,但是不幸的是,我还没有找到一个好的方法。 这是我的问题: 我正在为开发人员编写Node.js库。该库提供了开发人员将要使用的多个类,函数和方法。 为了使我的代码清晰易懂,并在将来(希望)自动生成一些API文档,我开始在代码中使用jsdoc自行记录正在发生的事情。 假设我定义了如下函数: function addStuff(x, y, callback) { callback(x+y); }); 目前,使用jsdoc,我正在将此功能记录如下: /** * Add two numbers together, then pass the results to a callback function. * * @function addStuff * @param {int} x - An integer. * @param {int} y - An integer. * @param {function} callback - …

6
用jsdoc记录匿名对象和函数的最佳方法
编辑:从技术上讲这是一个两部分的问题。我选择了涵盖一般问题并与处理特定问题的答案相关联的最佳答案。 用jsdoc记录匿名对象和函数的最佳方法是什么? /** * @class {Page} Page Class specification */ var Page = function() { /** * Get a page from the server * @param {PageRequest} pageRequest Info on the page you want to request * @param {function} callback Function executed when page is retrieved */ this.getPage = function(pageRequest, callback) …

2
如何为Piped ES6函数生成JSDoc
我有一个ES6样式的函数,该函数是使用组成的asyncPipe。 import { getItemAsync } from 'expo-secure-store'; const asyncPipe = (...fns) => x => fns.reduce(async (y, f) => f(await y), x); const getToken = () => getItemAsync('token'); const liftedGetToken = async ({ ...rest }) => ({ token: await getToken(), ...rest, }); const liftedFetch = ({ body, route, token, method = …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.