【发布时间】:2017-09-06 06:42:09
【问题描述】:
我有以下用于包装构造函数的高阶函数:
/**
* Wrapper for calling constructor with given parameters
*
* @param {Class} Cls
* @returns {function} Wrapper on constructor which creates an instance of given Class
*/
function constructorWrapper(Cls) {
return (...args) => new Cls(...args);
}
所以如果我有一个班级MyClass,我可以执行以下操作:
exports.MyClass = MyClass;
exports.myClass = constructorWrapper(MyClass);
现在类在导入后可以通过以下两种方式实例化:
const instance1 = new MyClass(param1, param2);
const instance2 = myClass(param1, param2);
在 vscode 中,instance1 将支持智能感知,但 instance2 不会。如何记录函数/导出,以便将使用包装器创建的对象识别为类的实例?
【问题讨论】:
-
Javascript 有时在
vscode上的记录不是很好,请改用 Typescript :(
标签: javascript documentation visual-studio-code higher-order-functions jsdoc3