0

创建片段时,我想知道如果没有分配值,是否可以为占位符定义默认值。

例如,有这个 php 片段:

{
  "get_list": {
        "prefix": "get_list",
        "body": "$${1:beanList} = $${2:bean}->get_list('${3:order_by}', \"${4:where}\", ${5:row_offset}, ${6:limit}, ${7:max}, ${8:show_deleted});",
        "description": "Get a paginate bean list"
    },
}

制表位 5 到 8 的占位符具有以下默认值:

$row_offset = 0
$limit= -1
$max= -1
$show_deleted = 0

我尝试了以下方式的选择,但没有成功:

{
  "get_list": {
        "prefix": "get_list",
        "body": "$${1:beanList} = $${2:bean}->get_list('${3:order_by}', \"${4:where}\", ${5:row_offset|0|}, ${6:limit}, ${7:max}, ${8:show_deleted});",
        "description": "Get a paginate bean list"
    },
}

请看一下row_offset定义。呈现片段时,我得到以下信息

$beanList = $bean->get_list('order_by', "where", row_offset|0|, limit, max, show_deleted);

在这种情况下,我希望发生的情况是我省略了0分配的占位符值。

谢谢你的帮助。

4

1 回答 1

3

最接近你想要的是“选择”。请参阅片段选择

你的术语有点不对劲。例如${6:limit}- 整个事物是占位符,limit是它的默认值。所以它已经有一个默认值 - limit- 现在你想要另一个。所以试试这个语法:

${6:|limit,-1|}

占位符可以有选择作为值。语法是逗号分隔的值枚举,用竖线字符括起来,例如 ${1|one,two,three|}。当插入片段并选择占位符时,选项将提示用户选择其中一个值。

于 2018-02-21T17:38:31.793 回答