e.g。
/**
* Super my enum
* @enum {number}
*/
MyEnum = {
ONE: 1,
TWO: 2
};
/**
* @param {what type is it?} enumObj
*/
function showEnum(enumObj) {
console.log(enumObj);
}
//show the enum definition object
showEnum(MyEnum);
如何将参数类型描述为MyEnum
的值/实例,而不是MyEnum
对象本身?
答案 0 :(得分:1)
使用!MyEnum
!
表示“非空”。
/**
* @param {!MyEnum} enumObj
*/
function showEnum(enumObj) {
console.log(enumObj);
}
答案 1 :(得分:0)
我在WebStorm和VSCode中测试的用于自动完成的解决方案是使用typeof MyEnum
。
它仍然是无效的JSDoc,但受IDE支持自动完成。
/**
* @param {typeof MyEnum} enumObj
*/
function showEnum(enumObj) {
console.log(enumObj);
}