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

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


当前回答

来自官方文件:

排除从.ts和.tsx源生成的JavaScript文件 文件,使用这个表达式:

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

这是一个小技巧。搜索glob模式用作键。 上面的设置使用两种不同的glob模式来提供两个 唯一的键,但搜索仍然会匹配相同的文件。

更新10/3/2017:有了这个技巧,我们有一个问题,“在文件夹中搜索”。请看这一期

其他回答

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

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

我真的不知道这是如何实现的,但隐藏.js文件工作:

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

用于隐藏.js。地图文件工作:

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

当你使用TypeScript时,你通常不希望在资源管理器或搜索结果中看到生成的JavaScript文件。VS Code通过文件提供过滤功能。排除设置(文件>首选项>工作区设置),您可以轻松地创建一个表达式来隐藏这些派生文件:

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

类似地,通过以下方法隐藏生成的.map文件:

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

所以你会得到这样的构型:

settings.json

// Place your settings in this file to overwrite default and user settings.
{
    "files.exclude": {
        "**/*.js": { "when": "$(basename).ts"},
        "**/*.js.map": { "when": "$(basename)"}
    }
}

链接:https://code.visualstudio.com/docs/languages/typescript # _hiding-derived-javascript-files

约翰爸爸的推特链接说使用以下方法:

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

当.map和.js文件与对应的.ts文件匹配时,隐藏它们可能会更好。 你可以通过在VS用户设置(首选项>用户设置)中复制以下行来做到这一点:

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