2013-08-12 13 views
27

Czy ktoś wie o IDE, które mogą autouzupełniania javascript stylu AMD:IDE autocompletion dla javascript AMD załadunku stylu

// 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 
}); 

Nie tylko daje najlepsze, fajne IDE chcesz. Próbowałem Komodo i Webstorm, po prostu nie mogłem ich zmusić do działania, a może nie skonfigurowałem ich poprawnie ... ale żaden nie daje możliwości ustawienia tego samego aliasu, co w dojoConfig (zbyt trudne?). Na przykład w Webstorm, istnieje koncepcja biblioteki, dodałem dojo i moją paczkę, ale oczywiście nie sposób, jak to możliwe bez znajomości ścieżek aliasów. Istnieje również koncepcja zmiennych ścieżek, nie ma sposobu, aby zrozumieć, jak to działa, dokumentacja jest tak słaba!

Dziękuję za pomoc.

+2

Możesz poprosić bezpośrednio o wsparcie WebStorm poprzez jego bugtracker http://youtrack.jetbrains.com/issues/WEB?p=375&f=false. Wsparcie tam jest niesamowite! (Nie pracuję dla nich;)) – diosney

+0

to powinno być najważniejsze pytanie dla każdego dewelopera amd javascript. nawet dla tych, którzy piszą w modułach innych niż AMD, muszą znać treść swojego kontekstu/zakresu ze strony ładującej pliki js. – Unicornist

Odpowiedz

15

Być może szukasz TernJS. It declares support of RequireJS via a plugin

Jest to najlepsze narzędzie, jakie znam w pracy. Tern jest raczej spragniony pamięci RAM (w porównaniu z czystym edytorem tekstu). Integracja z Sublime Text jest bezproblemowa, a dzięki innym wtyczkom Sublime możesz zbliżyć go do definicji IDE.

Poniżej znajduje się wyciąg z dokumentacji TernJS:

Tern jest silnikiem analiza kodu samodzielny język JavaScript. Jest to przeznaczone do użycia z wtyczką edytora kodu w celu ulepszenia obsługi edytora przez edytora JavaScript. Funkcje przewidziane są:

  • Autouzupełnianie na zmienne i właściwości
  • Funkcja argumentem podpowiedzi
  • Zapytania typ wyrażenia
  • Znalezienie definicji czymś
  • Automatic refaktoringu

Tern jest open-source (licencja MIT), napisany w JavaScript, i zdolny do pracy na node.js i w przeglądarce. wtyczki Editor

Obecnie Tern wsparcie dla następujących wydawców:

  • Emacs
  • Vim
  • Sublime Text
  • Wsporniki (wbudowane w edytor bazy)
+0

dziękuję za szlak, ale doktor wokół requireJS mówi o dwóch globaliach definiujących i requirejs, który drugi nie jest określony przez requireJS i używany wszędzie: jest "wymagający", może dokument jest przestarzały? Wtedy rozpoznaje tylko 2 opcje baseURL i ścieżki, a nie pakiety, cóż, mogę spróbować użyć tylko ścieżek, aby zobaczyć, czy może złapać moją strukturę ... i jest to najbardziej konfigurowalna, jaką widziałem do tej pory. Próbowałem również nawiasów, również w węźle skryptowym, ale żadna nie wymagałaConfig ... czy próbowałeś Cloud9? nie udało się go zainstalować i szybko przetestować. Jeszcze jedno pytanie: niektóre używa eksportu, dojo nie ... – dmidz

+0

Mam wrażenie, że dokument był ostatnio aktualizowany dawno temu. Kod źródłowy wtyczki (https://github.com/marijnh/tern/blob/master/plugin/requirejs.js) ewidentnie obsługuje 'require'. – Baradzed

0

Używam PHPStorm 8.1 (Webstorm również powinien być w porządku) i ... Autouzupełnianie AMD działa dobrze! Po prostu deklaruję pakiety js jako biblioteki javascript:

Ustawienia> Języki & Frameworks> JavaScript> Biblioteki> Dodaj ...

add a każdy punkt do swojego packages'folder i cieszyć :) wspomnieć JetBrains IDE skały, spróbować, na pewno będzie go przyjąć, ponieważ - przynajmniej - to rozwiązuje styl AMD ...