我正在尋找一種方式來從我的Javascript項目自動生成文檔。任何人都知道我該怎麼做?生成Javascript文檔
據我所知,有一些工具,如JSDoc,但我想知道你的意見,你最好的選擇,爲什麼。
謝謝!
編輯:只需要清楚,我需要類似JavaDOC或PHPDocumentor的東西,但要使用我的Javascript源代碼。
我正在尋找一種方式來從我的Javascript項目自動生成文檔。任何人都知道我該怎麼做?生成Javascript文檔
據我所知,有一些工具,如JSDoc,但我想知道你的意見,你最好的選擇,爲什麼。
謝謝!
編輯:只需要清楚,我需要類似JavaDOC或PHPDocumentor的東西,但要使用我的Javascript源代碼。
我發現了一個很好的教程,使用JSDoc創建JS文檔。我希望這對有需要的人有幫助。
Create useful relevant Javascript documentation with JSDoc
這正是我需要的。感謝您的答案堆垛機。
嗯... Windows應用程序。 – 2014-05-28 08:19:55
您正在使用哪個框架? (如果有的話)。我認爲你選擇的工具在很大程度上取決於它,因爲理想的情況是它必須理解類擴展和全部。 否則我認爲jsDoc是一個很好的開始。
有像Natural Docs這樣的工具來做到這一點。我以前親自使用過它,並且這對JavaScript很有效。
也有工具如docco來記錄源代碼。
一般來說,自動生成的文檔往往過於嚴格,有時手工製作的API像jQuery API更易於使用。
動態語言的文檔與靜態語言的文檔不同。由於API的使用方式不同,並且狀態的存在更加鬆散。
+1 Docco。 JSDoc本身就有嚴重的文檔記錄,並且作爲JavaDoc的一個端口,不能處理不太強烈的OOP代碼 - 對JS來說不切實際。 Docco有很好的文檔記錄,能夠正確處理JS,並被流行的JS應用程序(Backbone,Underscore)使用。 – mikemaccana 2012-01-05 10:01:28
@nailer docco是次優。我認爲groc是更好的選擇之一,但我現在正在等待TJ爲dox寫一個閃亮的模板層。 – Raynos 2012-01-05 16:34:18
@Raynos:首先我使用docco,但groc確實很棒!謝謝。 – asgoth 2013-02-14 11:20:47
嗨,我剛剛發現YUIDoc。我不很瞭解,但它看起來很不錯...
SmartComments + YUIDocs
使用非凡的夫婦可以記錄在不到一分鐘的大型的JavaScript項目。
SmartComments,它是一個允許您從JavaScript源代碼創建隱式註釋的工具。
您可以在控制檯或通過Sublime Text Plugin使用。
有關更多信息,請轉至http://smartcomments.github.io。
下面是關於YUIDocs的113張幻燈片:http://www.slideshare.net/ysaw/beautiful-documentation-with-yui-doc – gm2008 2016-03-31 13:13:12
autodoc
是塗料; https://www.npmjs.org/package/autodoc | https://github.com/dtao/autodoc
車博士讓你寫的測試中僅高於你的JavaScript功能的意見,然後運行命令行的測試和嵌入,並在瀏覽器中執行相同的測試,自動生成文檔。
認爲文學編程,看看http://danieltao.com/lazy.js/docs/一個很好的例子。那些綠色的對號是測試。
✓ Lazy([1, 2, 4]) // instanceof Lazy.ArrayLikeSequence
✓ Lazy({ foo: "bar" }) // instanceof Lazy.ObjectLikeSequence
✓ Lazy("hello, world!") // instanceof Lazy.StringLikeSequence
✓ Lazy() // sequence: []
✓ Lazy(null) // sequence: []
這是源是什麼樣子github.com/../lazy.js#L86
/**
* Wraps an object and returns a {@link Sequence}. For `null` or `undefined`,
* simply returns an empty sequence (see {@link Lazy.strict} for a stricter
* implementation).
*
* - For **arrays**, Lazy will create a sequence comprising the elements in
* the array (an {@link ArrayLikeSequence}).
* - For **objects**, Lazy will create a sequence of key/value pairs
* (an {@link ObjectLikeSequence}).
* - For **strings**, Lazy will create a sequence of characters (a
* {@link StringLikeSequence}).
*
* @public
* @param {Array|Object|string} source An array, object, or string to wrap.
* @returns {Sequence} The wrapped lazy object.
*
*
* @examples
* Lazy([1, 2, 4]) // instanceof Lazy.ArrayLikeSequence
* Lazy({ foo: "bar" }) // instanceof Lazy.ObjectLikeSequence
* Lazy("hello, world!") // instanceof Lazy.StringLikeSequence
* Lazy() // sequence: []
* Lazy(null) // sequence: []
*/
它擴展JSDoc https://developers.google.com/closure/compiler/docs/js-for-compiler,所以除了你可以有谷歌的關閉編譯器驗證和優化你很多東西。
這看起來確實很有希望。開發者在文檔中聲稱,它仍然在進行中,但它目前的功能非常酷。 – Typo 2014-05-04 17:38:57
如果用Node.js的工作,我創建了一個生成的JavaScript /節點/ HTML/CSS類圖的模塊。它基於UML的「WAE」擴展。它被稱爲wavi。對於javascript,函數,變量和其他模塊的使用都會被自動識別。您可以使用它來記錄您的應用程序。
你是什麼意思時,你說 「文檔」? – MeLight 2011-04-30 11:45:25
@MeLight類似PHPDocumentor或JavaDoc。我在我的源代碼中添加了一些註釋,並且我需要的是自動生成文檔(即HTML格式) – 2011-04-30 11:47:43
[Documenting Javascript code]的可能重複(http://stackoverflow.com/questions/2351881/documenting-javascript-code ) – 2011-04-30 12:30:38