2014-03-06 51 views
2

我申请JSDoc注释:JSDoc - 如何检查类型的JavaScript

/** 
* @param {number} millis 
* @param {function} callback 
* */ 
function sleep(millis, callback) { 
    setTimeout(function() { 
     callback(); 
    }, millis); 
} 

然后会告诉什么工具有下面一行的错误?

sleep('aaa', 'sdsdsd'); 

JSHint是否知道JSDoc类型注释?如何在Eclipse中启用这种支持?

+0

作为补充,我建议使用http://github.eclipsesource.com/jshint-eclipse/,它会给你js编辑器中的JsHint警告。 –

+0

我想支持此功能。请参阅https://github.com/angelozerr/tern-lint/issues/32它将与Eclipse一起使用,但是很快与Emacs和Atom一起使用 – Angelo

+0

我创建了一个问题来支持使用tern-lint(它在Eclipse中与tern .java)https://github.com/angelozerr/tern-lint/issues/42我将尽快实施 – Angelo

回答

1

免责声明,我是tern.java的作者。我建议你install tern.java 1.0.0-SNAPSHOT。它提供了使用JSDoc注释验证JavaScript文件的功能。下面这个问题的样本截图:

enter image description here

如果您需要JSDoc验证改进,请创建问题here

+0

嗨安杰洛,我一直在做一年。你不认识我? :-)等待你给Enide 2015试一试http://www.nodeclipse.org/enide/2015/ –

4

jshint不知道jsdoc的评论。然而,你可以看看使用eslint并为它编写一个插件来执行函数调用的类型检查。根据您的项目设置方式,您可能最终不得不预先解析代码,将注释提取到您的eslint规则将使用的规则文件中。

+0

Jason,@PaulVerest,你知道现在有哪些插件已经在2015年完成了吗? – tomekwi

0

你可以看看https://github.com/yarax/typelint

这是一个EsLint插件它为JSDoc注释进行类型检查,另外还支持它自己的扩展,使用Redux状态或Swagger模式(基本上是任何JSON模式)进行类型检查。

它有助于不从头开始编写复杂的复合类型并使用现有数据。