【发布时间】:2015-01-02 00:35:11
【问题描述】:
我已经尝试正确遵循 JSDoc guidelines 来处理我的所有代码,看起来我已经正确记录了我的构造函数,以便编辑器能够识别参数:
但由于某种原因,当我导出类以便在其他地方需要它们时,它们在任何地方都不再被识别:
当用户需要我的库时,我是否在导出类或记录使编辑器困惑的导出方式中遗漏了什么? require 语句本身正在运行,编辑器可以轻松导航到 require 语句中引用的源文件 ('./YLTProfile'),但由于某种原因,定义信息完全丢失了。
这是另一个示例,说明它如何查看类定义,我可以通过 ctrl+click 导航到它(定义见右侧),但它以白色突出显示,并且不提供有关该类的上下文或构造函数参数信息。
【问题讨论】:
-
直接导出构造函数/类对我来说是非常规的吗?
module.exports = { ClassName: ClassName }时我的问题似乎较少,但这让它们使用起来更尴尬,因为我必须去var ClassName = require('./ClassName'); var classInstance = new ClassName.ClassName(),这似乎是多余的。 -
据此(book.mixu.net/node/ch6.html),我正在做的似乎是导出类的标准模式。
-
Alain,您的示例在 WebStorm 9.0.1 中对我来说效果很好。参数信息显示与从定义文件调用时相同的参数。你能重新检查一下吗? JSDoc 对我来说看起来很合理。
-
感谢@de1mar 我可以确认我也在使用 WebStorm 9.0.1,但上面的屏幕截图仍然是我看到的行为。也许您启用了一组不同的全局库来启用它?我唯一的全局变量是 HTML/HTML5。
-
我已经添加了一个屏幕截图,说明它如何轻松找到我正在引用的类,但它将标识符视为编辑器中的未知对象变量。
标签: javascript require webstorm browserify jsdoc