webstorm是否有一些console.log或console.info的快捷方式


77

只是厌倦了一次又一次地输入console.log,并且在Eclipse中找不到像“ Sysout + Control + Space”这样的方法来创建System.out.println()。


它也有效,谢谢
Chopper Lee

Answers:


139

有一个预定义的Postfix模板,该模板允许您在JavaScript表达式或字符串后键入.log,然后单击Tab将其转换为console.log()。

您还可以创建一个Live模板(请参阅“首选项” |“编辑器” |“ Live”模板),一旦键入所选缩写并单击Tab,它就会扩展为代码段。

更新:现在还有一个插件,可让您使用快捷方式添加console.log:https : //plugins.jetbrains.com/plugin/10986-console-log


28
也可以在实时模板中使用$ END $,如下所示:console.log($END$);在自动补全结尾处,将光标置于括号之间。
olesse 2015年

7
切记设置Define部分以启用您使用的任何脚本。
西瓦·坎达拉吉'16

87

是的

<anything>.log然后 Tab按键。这将导致console.log(<anything>);

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


eg1:变量

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

eg2:字符串

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

eg3:字符串和变量

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

8
我现在比这个效率提高2000%... :-D谢谢!
Mike_NotGuilty

1
sysout...好得多!
Saravanabalagi Ramachandran

1
@SaravanabalagiRamachandran,太棒了!我只是想知道所有内置的实时模板也是可编辑的。我想对此进行调整,但是我只能找到默认的log + tab模板,而不能找到<anything> + tab。您是否知道它在编辑器设置中的位置?
programstinator

它像一种魅力。感谢您分享您的知识。

8

我制作了自己的模板,该模板似乎可以正常工作。对某人可能有用。

缩写:ll

模板文字:

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

变量:(只需单击下拉框选择给定的字段值)

  1. 名称-jsDefineParameter()
  2. 值-jsSuggestVariableName

无法使它正常工作。我将其添加到Java下的Live Templates。但是输入|| <tab>只是选项卡...没有模板插入。有什么我想念的吗?
斯科特

2
斯科特,我想你忘了写变量。用我的实时模板/快捷键查看此屏幕。yadi.sk/i/2AaC_ja33Z342U
ptnz

5

我包含了我认为最有效的内容,我是通过实时模板-> javascript->适用于“一切”的内容添加的。希望有人发现它有用。

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

它的作用:当我键入cl并按Tab键时,它将创建日志,并且您键入的第一件事将同时填充MYSTRINGMYVAR变量。如果再次选择选项卡,它将选择MYVAR您可以根据需要重写/删除的位置。第三次点击Tab键将带您到该行的末尾$END。该代码段也可以像打印行号一样,L123但是如果没有帮助,则可以轻松删除它,因为显然大多数浏览器仍然显示行号。

您还必须设置变量的行为,如下图所示:

编辑变量设置


这真是太了不起了,值得我按照您的指示花了4分钟。谢谢。
lustig

奇妙!!我做了一个微小的超简单的变化,这让我有自动完成$MYVAR$(因此对于$MYSTRING$在同一时间)。在Edit variables对话中,我只是以代替$MYVAR$$MYSTRING$所以$MYVAR$现在放在最上面。这是一张图片,更容易理解。
小子

3

使用宏!

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

我录制了一个宏,该宏使用光标所在的名称并创建

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

在下一行。并为其分配了键盘快捷键:)

超级简单,并且无法通过1次操作获得实时模板来获得相同的结果。

创建新的宏:编辑->宏->开始宏录制。然后记录您的下一步行动并创建所需的结果。这是我的:

在此处输入图片说明


嗨,伊丹,您能和我们分享一下吗?
David Lasry

嗨,大卫,我已经编辑了帖子以添加更多信息。我认为录制宏比手动编辑要好,但是添加了我得到的结果的屏幕截图。祝你好运
伊丹·哈夫(Idan HAV)

1

我做了一个自定义模板。这可以为您提供帮助。

缩写:木log

模板代码:

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


0

也许这是最近添加的内容,但是您可以编写日志并单击tab和console.log(),并且在插入括号之间出现插入号。

来自Ekaterina Prigara(https://stackoverflow.com/a/32975087/5653914)的答案对我来说非常有用,但是如果您要记录“ Test”之类的字符串,则此方法会更快。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.