Javascript 如何告诉JSDoc我正在用特定类型扩展模板类?
我需要一些包装器类来将值从XML转换为javascript并返回。设置如下所示:Javascript 如何告诉JSDoc我正在用特定类型扩展模板类?,javascript,jsdoc,Javascript,Jsdoc,我需要一些包装器类来将值从XML转换为javascript并返回。设置如下所示: /** * @template T * */ class Value { /** * * @param {Element} valueNode */ constructor(valueNode) { this.node = valueNode; } /** @type {T} **/ get value() {
/**
* @template T
* */
class Value {
/**
*
* @param {Element} valueNode
*/
constructor(valueNode) {
this.node = valueNode;
}
/** @type {T} **/
get value() {
return this.node.hasAttribute("value") ? this.convertToJS(this.node.getAttribute("value")) : null;
}
/**
* Must be overriden and provide JS object/variable from the string value
* @param {string} stringValue
* @returns {T}
*/
convertToJS(stringValue) { }
}
/**
* @class
* @extends Value<boolean>
* */
class BoolValue extends Value {
/**
* Must be overriden and provide JS object/variable from the string value
* @param {string} stringValue
* @returns {T}
*/
convertToJS(stringValue) { return stringValue == "true"; }
}
/**
*@T模板
* */
阶级价值{
/**
*
*@param{Element}valueNode
*/
构造函数(valueNode){
this.node=valueNode;
}
/**@type{T}**/
获取值(){
返回this.node.hasAttribute(“值”)?this.convertToJS(this.node.getAttribute(“值”)):null;
}
/**
*必须重写,并从字符串值提供JS对象/变量
*@param{string}stringValue
*@returns{T}
*/
convertToJS(stringValue){}
}
/**
*@级
*@扩展价值
* */
类布尔值扩展值{
/**
*必须重写,并从字符串值提供JS对象/变量
*@param{string}stringValue
*@returns{T}
*/
convertToJS(stringValue){返回stringValue==“true”;}
}
当我有一个实例ifBoolValue
时,我想让VisualStudio知道myVar.value
是一个boolean
如何告诉JSDoc类扩展了具有特定类型的模板类?我可能不理解这个问题,但是 当我有一个实例if
BoolValue
时,我想让VisualStudio知道myVar.value
是一个boolean
适用于当前设置:D
我可能不理解这个问题,但是 当我有一个实例if
BoolValue
时,我想让VisualStudio知道myVar.value
是一个boolean
适用于当前设置:D