我正在开发一个在特殊 C 环境中运行的 JavaScript 项目。该环境有一些我需要使用的功能,我想添加一些虚拟文档文件来提供代码完成和类型检查。基于 StackOverflow 上的另一个答案,我可以执行类似下面的代码来仅从注释创建函数。
/**
* @namespace Clib
*/
/**
* @name Clib#test
* @function
* @param {String} [var=''] Some variable.
*/
使用 JSDoc 生成 HTML 文件效果很好,大部分情况下与类型检查和代码完成相同。但是,WebStorm 似乎不理解可选参数,除非有附加代码。
从我上面的例子中,WebStorm 给出了一个警告,因为它认为
Clib.test();
无效,因为它缺少参数,即使我将参数放在 [] 中并设置了默认值。
现在,如果我说
Clib.test = function(var1){};
在注释下,然后 WebStorm 识别可选参数。两者都删除了警告
Clib.test();
并显示var1在代码完成框中是可选的。
如果有另一种方法,我宁愿不为这些环境功能中的每一个编写快速模型。
我的注释有什么不正确的地方吗?或者这是 WebStorm 的限制?
谢谢