mvl*_*bat 10 javascript jsdoc webstorm
例如,我有以下功能:
\n\nfunction createInstanceOf(ObjectConstructor) {\n return new ObjectConstructor;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n当我传递一个类作为参数时,我想让 WebStorm 自动完成功能正常工作。例如:如果我打电话,createInstanceOf(ClassA)我想看到自动完成,例如ClassA,如果我打电话createInstanceOf(ClassB)\xe2\x80\x93 ClassB。所以 JSDoc 函数必须是通用的。
使用 JSDoc 定义泛型函数并使@return值类型与 相同很容易@param,但我发现没有办法将@param类型视为返回对象的构造函数。
所以这不起作用:
\n\n/**\n * @param {T} ObjectConstructor\n * @returns {T}\n * @template T\n */\nfunction createInstanceOf(ObjectConstructor) {\n return new ObjectConstructor;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n我也尝试让它以这种方式工作:
\n\n/**\n * @param {function(new:T)} ObjectConstructor\n * @returns {T}\n * @template T\n */\nfunction createInstanceOf(ObjectConstructor) {\n return new ObjectConstructor;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n但也许我错误地使用了闭包类型,或者 WebStorm 无法解析此类泛型类型。
\n\n如果 JSDoc 有多种解决方案,我想找出哪些专门适用于 WebStorm IDE 自动完成功能。
\n\n谢谢
\nCan*_*oso 11
你可能不再需要这个了,但我也已经坚持了几个月了,所以对于其他想知道的人来说,你可以这样做:
/**
* @template T
* @param {new() => T} ObjectConstructor
* @returns {T}
*/
function createInstanceOf(ObjectConstructor) {
return new ObjectConstructor;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1974 次 |
| 最近记录: |