WebStorm 2019.3帮助

实时模板变量

展开实时模板缩写时,其变量将显示为输入字段,您可以在其中输入值或替换为值。这些可能是您可以修改的默认值,也可能是使用函数计算的值。

模板中的变量以以下格式声明:

$$

每个变量都由表达式定义,并且在表达式无法求值的情况下可以接受一些默认值。

该表达式可能包含以下基本类型的构造:

  • 双引号中的字符串常量。

  • 实时模板中定义的另一个变量的名称。

  • 带有可能参数的预定义函数。

可以在“ 编辑模板变量”对话框中配置模板变量

配置模板变量

  1. 在“ 设置/首选项”对话框中( Ctrl+Alt+S ),转到“ 编辑器” |实时模板

  2. 选择要在其中配置变量的模板。

  3. 在模板文本中指定变量,然后单击编辑变量

  4. 在打开的对话框中,您可以对每个变量执行以下操作:

    • 更改变量名称。

    • 使用预定义的函数定义表达式。

    • 为表达式无法求值的情况指定默认值。

    • 如果变量是使用其表达式定义的,则指定在提示用户输入时是否要跳过该变量。

预定义模板变量

WebStorm支持以下无法修改的预定义实时模板变量:

  • $END$表示代码段完整后的光标位置,您无法再按Tab跳到下一个变量。

  • $SELECTION$在环绕模板中使用,表示要包装的代码片段。扩展模板后,将按照模板中的指定包装所选文本。例如,如果您选择EXAMPLE在您的代码中并调用"$SELECTION$"模板通过指定的缩写或按Ctrl+Alt+T然后从列表中选择所需的模板,WebStorm会将选择内容用双引号引起来,如下所示: "EXAMPLE"

实时模板变量中使用的预定义函数

以下功能可用于定义实时模板变量:

功能

描述

blockCommentEnd

返回表示当前语言上下文中块注释结尾的字符。

blockCommentStart

返回表示当前语言上下文中块注释开始的字符。

camelCase(String)

将字符串转换为camelCase。例如, camelCase(my-text-file)camelCase(my text file)camelCase(my_text_file)全部归还myTextFile

capitalize(String)

大写参数的首字母。

capitalizeAndUnderscore(String)

将作为参数传递的CamelCase名称的所有字母大写,并在各部分之间插入下划线。例如, capitalizeAndUnderscore(FooBar)退货FOO_BAR

classNameComplete()

该表达式替代变量位置处的类名完成

clipboard()

返回系统剪贴板的内容。

commentEnd()

返回表示当前语言上下文中注释结尾的字符。如果以当前语言定义了行注释,则返回值为空。

commentStart()

返回表示当前语言上下文中注释开始的字符。如果以当前语言定义了行注释,则最好使用开始指示符。

complete()

在变量的位置调用代码完成。

completeSmart()

在变量的位置调用智能类型完成。

concat(expressions...)

返回作为参数传递给函数的所有字符串的串联。

dartIterableVariable()

返回可以迭代的变量的名称。

dartListVariable()

返回数组元素的列表。

dartSuggestIndexName()

返回最常用索引变量的建议名称: ijk和儿子。首先显示当前范围中尚未使用的名称。

dartSuggestVariableName()

根据引用变量命名规则的代码样式设置,根据变量的类型和初始化表达式返回变量的建议名称。
例如,如果它是在迭代中保存元素的变量,则WebStorm会考虑要迭代的容器的名称,对最合理的名称进行猜测。

date(sDate)

以指定格式返回当前系统日期。

如果没有参数,则以默认系统格式返回当前日期。

要使用其他格式,请根据SimpleDateFormat规范提供一个参数。例如功能date("Y-MM-d, E, H:m")将返回格式为的日期2019 - 07 - 5, Fri, 12:56

decapitalize(sName)

用相应的小写字母替换参数的第一个字母。

defaultReturnValues

如果在return语句中使用表达式,则返回默认值。使用errorVariableName参数,如果表达式是错误类型。

enum(sCompletionString1,sCompletionString2,...)

返回扩展模板时建议完成的逗号分隔字符串的列表。

escapeString(sEscapeString)

转义指定为参数的字符串。

expectedType()

返回模板扩展到的表达式的预期类型。如果模板在作业后的右侧扩展,则很有意义return , 等等。

fileName()

返回带有扩展名的当前文件的名称。

fileNameWithoutExtension()

返回没有扩展名的当前文件的名称。

filePath()

返回当前文件的绝对路径。

fileRelativePath()

返回当前文件的相对路径。

firstWord(sFirstWord)

返回作为参数传递的字符串的第一个单词。

groovyScript("groovy code", arg1)

返回带有指定代码的Groovy脚本。

您可以使用groovyScript()具有多个参数的函数。第一个参数是执行的脚本的文本或包含该脚本的文件的路径。下一个参数绑定到_1_2_3 ,... _n脚本中可用的变量。另外, _editor变量在脚本内可用。此变量绑定到当前编辑器。

JsArrayVariable()

返回当前JavaScript数组的名称。

jsClassName()

返回当前JavaScript类的名称。

jsComponentTypeOf()

返回当前JavaScript组件的类型。

jsDefineParameter

根据模块的名称,从中返回参数define(["module"], function (>) {})

jsMethodName()

返回当前JavaScript方法的名称。

jsQualifiedClassName()

返回当前JavaScript类的全名。

jsSuggestIndexName()

返回最常用索引变量的建议名称: ijk和儿子。首先显示当前范围中尚未使用的名称。

jsSuggestVariableName()

根据引用变量命名规则的代码样式设置,根据变量的类型和初始化表达式返回变量的建议名称。
例如,如果它是在迭代中保存元素的变量,则WebStorm会考虑要迭代的容器的名称,对最合理的名称进行猜测。

jsSuggestDefaultVariableKind(Boolean)

布尔参数确定在当前上下文中是否允许使用常量。如果未指定任何参数,则允许使用常量。模板展开后,将显示一个列表,其中包含varletconst TypeScript和ES6的选项,并且只有一个var JavaScript早期版本的选项。

jsSuggestImportedEntityName()

建议类型的导入语句的名称`import * as $ITEM$ from "$MODULE$"`要么`import $ITEM$ from "$MODULE$"`基于文件名。

lineCommentStart

返回表示当前语言上下文中行注释开头的字符。

lineNumber()

返回当前行号。

lowercaseAndDash(String)

将camelCase字符串转换为小写并插入n-破折号作为分隔符。例如, lowercaseAndDash(MyExampleName)退货my-example-name

regularExpression(String, Pattern, Replacement)

查找所有出现的Pattern在一个String并替换为Replacement 。您可以将模式指定为正则表达式,以查找字符串中与之匹配的所有内容。

snakeCase(String)

将字符串转换为snake_case。例如, snakeCase(fooBar)退货foo_bar

spaceSeparated(String)

将字符串转换为小写并插入空格作为分隔符。例如, spaceSeparated(fooBar)退货foo bar

spacesToUnderscores(sParameterWithSpaces)

用作为参数传递的字符串中的下划线替换空格。例如, spacesToUnderscores(foo bar)退货foo_bar

substringBefore(String,Delimiter)

在指定的分隔符后删除扩展名,仅返回文件名。这对于测试文件名很有帮助(例如, substringBefore($FileName$,".")退货component-testcomponent-test.js中 )。

time(sSystemTime)

以指定格式返回当前系统时间。

如果没有参数,则以默认系统格式返回当前时间。

要使用其他格式,请根据SimpleDateFormat规范提供一个参数。例如功能time("H:m z")将返回格式化为的时间戳13:10 UTC

underscoresToCamelCase(String)

用作为参数传递的字符串中的camelCase字母替换下划线。例如, underscoresToCamelCase(foo_bar)退货fooBar

underscoresToSpaces(sParameterWithUnderscores)

将下划线替换为作为参数传递的字符串中的空格。例如, underscoresToSpaces(foo_bar)退货foo bar

user()

返回当前用户的名称。

上次修改时间:2019年11月24日