2014-03-06 84 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模式)進行類型檢查。

它有助於不從頭開始編寫複雜的複合類型並使用現有數據。