Hat Webstorm eine Verknüpfung für console.log oder console.info?


78

Nur müde, immer wieder console.log einzugeben und keinen Weg wie 'Sysout + Control + Space' in Eclipse zu finden, wird System.out.println () erstellt.


es funktioniert auch, danke
Chopper Lee

Antworten:


140

Es gibt eine vordefinierte Postfix-Vorlage, mit der Sie .log nach einem JavaScript-Ausdruck oder einer JavaScript-Zeichenfolge eingeben und die Tabulatortaste drücken können, um sie in console.log () umzuwandeln.

Sie können auch eine Live-Vorlage erstellen (siehe Einstellungen | Editor | Live-Vorlagen), die sich zu einem Code-Snippet erweitert, sobald Sie die ausgewählte Abkürzung eingeben und die Tabulatortaste drücken.

Update: Es gibt jetzt auch ein Plugin, mit dem Sie console.log mit einer Verknüpfung hinzufügen können: https://plugins.jetbrains.com/plugin/10986-console-log


28
Kann $ END $ auch in einer Live-Vorlage wie der folgenden verwenden: console.log($END$);um den Cursor am Ende der automatischen Vervollständigung zwischen die Klammern zu setzen.
Olesse

7
Denken Sie daran, einen DefineAbschnitt einzurichten , um die von Ihnen verwendeten Skripte zu aktivieren.
Siva Kandaraj

87

Ja , das tut es,

<anything>.logund drücken Sie die TabTaste. Dies führt zuconsole.log(<anything>);

dh

<anything>.log+ Tab=>console.log(<anything>);


eg1: variabel

let my_var = 'Hello, World!';
my_var.log + Tab => console.log(my_var);

eg2: string

'hello'.log + Tab => console.log('hello');

eg3: String und Variable

'hello', my_var.log + Tab => console.log('hello', my_var);

8
Ich bin jetzt 2000% effizienter mit diesem ... :-D danke!
Mike_NotGuilty

1
viel besser als sysout...!
Saravanabalagi Ramachandran

1
@ SaravanabalagiRamachandran, brillant! Ich habe gerade herausgefunden, dass alle integrierten Live-Vorlagen auch bearbeitet werden können. Ich möchte diese optimieren, kann jedoch nur die Standardvorlage für Protokoll + Registerkarten finden und nicht die Registerkarte <Alles> +. Wissen Sie vielleicht, wo es sich in den Editoreinstellungen befindet?
Programmstinator

Es wirkt wie ein Zauber. Vielen Dank für Ihr Wissen.
Tung

8

Ich habe meine eigene Vorlage erstellt, die zu funktionieren scheint. Es kann für jemanden nützlich sein.

Abkürzung: ll

Vorlagentext:

console.log('$NAME$ ', $VALUE$);
    $END$

Variablen: (Wählen Sie einfach die angegebenen Feldwerte aus, indem Sie auf das Dropdown-Feld klicken.)

  1. NAME - jsDefineParameter ()
  2. VALUE - jsSuggestVariableName

Kann das nicht zum Laufen bringen. Ich habe es Live-Vorlagen unter Javascript hinzugefügt. Aber wenn Sie || <tab> eingeben, werden nur Tabulatoren angezeigt ... keine Vorlagen einfügen. Gibt es etwas, das ich verpasst habe?
Scott

2
Scott, ich denke du hast vergessen Variablen zu schreiben. Schauen Sie sich diesen Bildschirm mit meinen Live-Vorlagen / Shortkeys an. yadi.sk/i/2AaC_ja33Z342U
ptnz

5

Ich füge hinzu, was ich für das effizienteste halte, was ich über Live-Vorlagen hinzugefügt habe -> Javascript -> anwendbar auf "Alles". Hoffentlich findet es jemand nützlich.

console.log('L$LINE$ $MYSTRING$ ===', $MYVAR$);$END$

Was es tut: Wenn ich tippe clund die Tabulatortaste drücke, wird das Protokoll erstellt und als erstes werden sowohl Variablen MYSTRINGals auch MYVARVariablen ausgefüllt. Wenn Sie erneut auf die Registerkarte klicken, wird ausgewählt, MYVARwo Sie nach Bedarf neu schreiben / löschen können. Wenn Sie das dritte Mal auf die Tabulatortaste drücken, gelangen Sie zum Ende der Zeile um $END. Dieses Snippet druckt auch die Zeilennummer wie, L123aber Sie können diese leicht entfernen, wenn dies nicht hilfreich ist, da die meisten Browser offensichtlich sowieso die Zeilennummer anzeigen.

Sie müssen auch das Verhalten der Variablen wie in der Abbildung unten dargestellt einstellen:

Bearbeiten Sie das Setup der Variablen


Das ist wirklich erstaunlich und die 4 Minuten wert, die ich gerade damit verbracht habe, Ihren Anweisungen zu folgen. Vielen Dank.
lustig

Wunderbar!! Ich machte eine winzige super-einfache Änderung , die mir zu haben , ermöglicht die automatische Vervollständigung für $MYVAR$(und damit für $MYSTRING$die gleichzeitig). Im Edit variablesDialog, einfach ich ersetzt $MYVAR$mit , $MYSTRING$damit $MYVAR$ist jetzt an der Spitze. Hier ist ein Bild davon , es ist leichter zu verstehen.
Bloke

3

benutze Makros!

https://www.jetbrains.com/help/webstorm/using-macros-in-the-editor.html

Ich habe ein Makro aufgenommen, das den Namen meines Cursors annimmt und erstellt

console.log("#### name = ", name);

in der nächsten Zeile. und ihm eine Tastenkombination zugewiesen :)

Super einfach und konnte keine Live-Vorlage erhalten, um mit 1 Aktion das gleiche Ergebnis zu erzielen.

So erstellen Sie ein neues Makro: Bearbeiten -> Makros -> Makroaufzeichnung starten. Zeichnen Sie dann Ihre nächsten Züge auf und erstellen Sie das gewünschte Ergebnis. das ist meins:

Geben Sie hier die Bildbeschreibung ein


Hallo Idan, kannst du es uns bitte mitteilen?
David Lasry

Hey David, ich habe den Beitrag bearbeitet, um weitere Informationen hinzuzufügen. Ich denke, es ist besser, ein Makro aufzunehmen, als es von Hand zu bearbeiten, aber ich habe einen Screenshot des Ergebnisses hinzugefügt, das ich erhalten habe.
Viel

1

Ich habe eine benutzerdefinierte Vorlage erstellt. Dies kann Ihnen helfen.

Abkürzung: verstopfen

Vorlagencode:

console.log("\n\n--------------------------------");
console.log($END$);
console.log("--------------------------------\n\n");


0

Vielleicht ist es eine neue Ergänzung, aber Sie können ein Protokoll schreiben und die Tabulatortaste drücken, und console.log () wird mit dem Caret zwischen den geschweiften Klammern angezeigt.

Die Antwort von Ekaterina Prigara ( https://stackoverflow.com/a/32975087/5653914 ) war für mich sehr nützlich, aber wenn Sie eine Zeichenfolge wie "Test" protokollieren möchten, ist diese Methode schneller.


0

[UPDATE 2020]

Tippen log+ Enter autocompletes zuconsole.log()


@Chopper Lee das sollte heute ohne weitere Konfiguration
funktionieren
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.