我正在Visual Studio代码中的typescript项目中工作,并想隐藏.js。映射(甚至可能是.js)文件,使其不出现在文件资源管理器中。

是否可以在文件资源管理器中只显示.ts文件?


当前回答

我发现了这个,如果你有标准的JS文件,那么这些也会被隐藏,这可能并不总是你想要的。也许这样更好,因为它只隐藏与TS文件匹配的JS文件…

{
    "files.exclude": {
        "**/.git": true,
        "**/.DS_Store": true,
        "**/*.js.map": true,
        "**/*.js": {"when": "$(basename).ts"}
    }
}

其他回答

在v1.67中(参见https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_67.md):

浏览器文件嵌套

资源管理器现在支持基于名称嵌套相关文件。有几个设置来控制这种行为:

enabled:控制文件嵌套是否大规模启用。它可以全局设置,也可以为特定的工作空间设置。 expand:控制默认情况下嵌套文件是否展开。 patterns:控制文件如何嵌套。默认配置为TypeScript和JavaScript项目提供嵌套智能,但鼓励您修改它以适应您自己的项目结构。一些例子:

默认配置:

在索引下嵌套。当一个文件与目录的名称("index. txt ")匹配时,则为Ts。ts”:“${目录名}.ts”):

嵌套与不同文件同名但添加了段("*":"${basename}.*.${dirname}")的文件:

Those following closely my recall this has been an experimental setting for several iterations. The behavior now is mostly unchanged, with the expeption of file operations. The experimental setting explorer.experimental.fileNesting.operateAsGroup has been removed in favor of treating nests as a group when collapsed, but as single entities otherwise. This means that if you want to copy, cut, drag, or delete an entire nested stack of files, you can collapse the nest then operate on it as a single entity. When non collapsed, selections will behave as normal.


之前的回答:

在Insiders Build v1.64中有一个新的,目前处于试验阶段的特性,叫做文件嵌套,虽然它不会隐藏自动生成的文件,但是如果你愿意,它会将它们嵌套在生成相关文件的父文件下,使其处于折叠状态。如果可能的话,你应该现在就在内部构建中测试你的案例。

因此,通过对文件嵌套:模式的修改:

”*。Ts”:“$(capture).js, $(capture).d。ts, $(捕捉). js。你可以很容易地实现OP的要求。演示:

文件嵌套将不会隐藏那些嵌套文件的搜索。

将这些设置添加到您的设置中。Json在你的。vscode文件夹

// Place your settings in this file to overwrite default and user settings.
{
    "files.exclude" :{
    "**/.git":true,
    "**/.DS_Store":true,
    "**/*.map":true,
    "**/app/**/*.js":true

    }
}

如果设置。单击文件—>首选项—>工作空间设置。

在你的设置中(用户或工作区)有一个设置,你可以调整隐藏任何你想要的东西:

{
    "files.exclude": {
        "**/.git": true,
        "**/.DS_Store": true
    }
}

因此,您可以添加以下内容来隐藏.js和.js。映射文件

"**/*.js": true,
"**/*.js.map": true

正如另一个答案所解释的那样,大多数人可能只在有匹配的.ts文件时才想隐藏.js文件。

所以不要这样做:

"**/*.js": true

你可能想做的是:

"**/*.js": {"when": "$(basename).ts"}

我发现了这个,如果你有标准的JS文件,那么这些也会被隐藏,这可能并不总是你想要的。也许这样更好,因为它只隐藏与TS文件匹配的JS文件…

{
    "files.exclude": {
        "**/.git": true,
        "**/.DS_Store": true,
        "**/*.js.map": true,
        "**/*.js": {"when": "$(basename).ts"}
    }
}

请在“用户设置”面板中添加以下行,以覆盖“默认设置”。你可以隐藏文件{basename}.js和{basename}.js。在创建文件{basename}.ts时映射。

"files.exclude": {
        "**/*.js": {
            "when": "$(basename).ts"
        },
        "**/*.js.map": {
            "when": "$(basename)"
        }        
    }