2013-08-12 57 views
27

IDE自動完成有誰知道,能自動完成JavaScript的AMD風格的IDE的:的JavaScript加載AMD風格

// my dojoConfig defined aliases to the packages I use (dojo, dmidz) 
// so in dmidz/my-module.js 
define(['dojo/dom-construct'], function(cons){// requiring some dojo module 
    cons.// <- oh it is nicely displaying list of dom-construct module methods 
}); 

請不要只是給你最喜歡的,涼爽的IDE。我嘗試過Komodo和Webstorm,但我無法讓它們工作,或者我沒有正確配置它們......但是沒有人可以設置與dojoConfig中相同的別名(太難了?)。 例如在Webstorm中,有一個庫的概念,我添加了dojo和我的包,但當然,沒有辦法,它不知道別名路徑。還有一個路徑變量的概念,沒辦法理解它是如何工作的,文檔很差!

感謝您的幫助。

+2

您可以通過其錯誤追蹤http://youtrack.jetbrains.com/issues/WEB?p=375&f=false直接詢問WebStorm支持。那裏的支持真棒! (我不爲他們工作;)) – diosney

+0

這應該是任何amd javascript開發人員最重要的問題。即使對於那些使用非amd模塊編寫的人來說,他們也需要從加載js文件的頁面中瞭解其上下文/作用域的內容。 – Unicornist

回答

15

您可能正在尋找TernJS。 It declares support of RequireJS via a plugin

這是我知道的最好的工具。但是,Tern相當需要內存(與純文本編輯器相比)。 與Sublime Text的集成是無縫的,並且與其他Sublime插件相比,您可以非常接近IDE的定義。

下面是TernJS文件的摘錄:

燕鷗是JavaScript的一個獨立的代碼分析引擎。它是 旨在與代碼編輯器插件一起使用以增強編輯器的智能JavaScript編輯的 支持。提供的功能包括:

  • 自動完成的變量和屬性
  • 函數參數提示
  • 查詢表達式
  • 的尋找的東西
  • 自動定義重構

燕鷗類型是開源的(MIT許可證),用JavaScript編寫,並且能夠運行node.js和瀏覽器中。編輯器插件

有以下編輯目前燕鷗支持:

  • Emacs的
  • Vim的
  • 崇高文本
  • 支架(內置於底座編輯)
+0

感謝你的支持,但是有關requireJS的文檔討論了2個全局變量定義和requirejs,其中第二個不是由requireJS指定的並且在任何地方使用:它是'require',也許文檔已過時?然後它只識別2個選項baseURL和路徑,而不是包,以及我可以嘗試僅使用路徑來查看它是否可以捕獲我的結構......並且它是迄今爲止我所見過的最具可配置性。我嘗試了方括號,節點腳本也沒有requireConfig ...你試過Cloud9嗎?無法安裝並快速測試。一個更多的概率:一些使用出口,dojo不... – dmidz

+0

我的感覺是,該文件是很久以前更新。該插件的[源代碼](https://github.com/marijnh/tern/blob/master/plugin/requirejs.js)顯然支持'require'。 – Baradzed

0

那麼我現在正在使用PHPStorm 8.1(Webstorm應該也可以),並且... AMD自動完成工作正常! 我聲明我的js包的JavaScript庫:

設置>語言&框架>的JavaScript>庫>添加...

添加並指向每個packages'folder,享受:)不得不提JetBrains的IDE岩石,給它一個嘗試,相信你一定會採用它,因爲 - 至少 - 它解決了AMD的風格......