Visual Studio 代码 JS 片段转义大括号

Visual Studio Code JS Snippet escape curly bracket

我想在 Visual Studio 代码中为 Javascript 创建一个代码段,其中包含一个包含大括号的占位符,但 Visual Studio 似乎不跟踪括号嵌套。

我的代码片段看起来像这样:

"MySnippet": {
    "prefix": "snippet",
    "body": [
        "OuterFunction(() => {",
        "   //code",
        "   ${1:InnerFunction(() =>{",
        "       ",
        "   },timeout);}",
        "});"
    ],
    "description": "create a thing"
}

我希望得到这样的输出:

OuterFunction(() => {
       //code
       InnerFunction(() => {

       },timeout);
    });

使用 setTimeout 语法作为占位符。

相反,我得到了这个:

OuterFunction(() => {
   //code
   InnerFunction(() => {

   ,timeout)};
});

这显然行不通。

我试过像这样 \{{{ 转义花括号,但它似乎不起作用。有没有一种简单的方法可以做到这一点,或者我只需要为外部和内部函数使用两个单独的片段?

这行得通吗?:

"MySnippet": {
    "prefix": "snippet",
    "body": [
        "OuterFunction(() => {",
        "   //code",
        "   ${1:InnerFunction(() => {  \}, timeout);}",
        "});"
    ],
    "description": "create a thing"
}

生产:

OuterFunction(() => {
   //code
   InnerFunction(() => {  }, timeout);
});

这里选择InnerFunction(() => { }, timeout);,然后tab后括号内。