如果我定义这样的对象:
/**
* My Cool Object
* @constructor
*/
function MyCoolObject() {
/**
* Cool Method, private
* @param {!string} parameter
*/
function localMethod(parameter) {
// do stuff
}
// Export the method
this.exportedMethod = localMethod;
}
我想知道,如果可能的话,如何告诉 JSDOC 在localMethod
中使用exportedMethod
的注释,或者我该如何注释? exportedMethod
,因为如果我这样做:
// Export the method
/**
* Cool Method
* @param {!string} parameter
*/
this.exportedMethod = localMethod;
JSDOC 假设它是一个字段而不是一个方法,然后只使用描述,忽略@param
部分。
答案 0 :(得分:1)
我会把它减少到:
/**
* My Cool Object
* @constructor
*/
function MyCoolObject() {
/**
* Cool Method, private
* @param {!string} parameter
*/
this.exportedMethod = function (parameter) {
// do stuff
};
}
如果您想要本地引用该方法,您可以立即执行var localMethod = this.exportedMethod
。如果您过度简化了示例并且需要在分配到localMethod
之前首先分配给this.exportedMethod
,那么您可以这样做:
/**
* My Cool Object
* @constructor
*/
function MyCoolObject() {
function localMethod(parameter) {
// do stuff
}
/**
* Cool Method, private
* @param {!string} parameter
* @function
*/
// Export the method
this.exportedMethod = localMethod;
}
@function
声明告诉jsdoc它正在处理一个函数。