【问题标题】:How to correctly document require module.exports so that documentation isn't lost?如何正确记录 require module.exports 以免文档丢失?
【发布时间】: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


【解决方案1】:

看来你必须把你的模块放在node_modules中,然后它会自动出现在库中,或者手动添加一个库并指向包含你的模块的正确目录。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-03
    • 1970-01-01
    • 2020-04-30
    • 1970-01-01
    • 2014-07-12
    • 2019-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多