这是关于documentation
的纯JavaScript
相关问题。
我想创建一个Object
,其中一些字段将是其他Objects
,并在文档中说明。 (我使用Visual Studio代码)。
这是一个对象的简单示例声明。
/**
* @type {Object.<string, number>}
*/
var User = {
name,
id
};
文档中的内容应如下所示:
var User = {
name: string;
id: number;
}
这是一个更高级的例子。一些对象字段实际上是用户对象
/**
* @type {Object.<string, User>}
*/
var Message = {
text,
from
};
这是它应该出现在文档中的方式:
var Message = {
text: string;
from: {
name: string;
id: number;
};
}
这也是可以接受的:
var Message = {
text: string;
from: User;
}
但Visual Studio Code
显示:
var Message = {
text: string;
from: any;
}
答案 0 :(得分:0)
我明白了,我只需要使用@typedef
。
通过使用@typedef
,您可以创建自定义类型定义,因此要创建自定义Object
,您只需执行@typedef {{}}
。并在其中添加所有属性。一旦定义了类型,您也可以在另一个@typedef
中使用它。
因此下面的评论会创建两种新类型。
/**
* @typedef {{ name: string, id: number }} User
* @typedef {{ text: string, from: User }} Message
*/
现在我只需要分别添加@type {User}
和@type {Message}
/** @type {User} */
var User = {
name,
id
};
/** @type {Message} */
var Message = {
text,
from
};