Скрыть файлы .js.map в коде Visual Studio

299

Я работаю над проектом typescript в коде Visual Studio и хотел бы скрыть файлы .js.map (и, возможно, даже .js) из файла в проводнике файлов.

Можно ли отображать только файлы .ts в проводнике файлов?

Теги:
visual-studio-code
vscode-settings

11 ответов

565
Лучший ответ

В ваших настройках (пользователь или рабочая область) есть параметр, который вы можете настроить, чтобы скрыть что угодно:

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

Итак, вы можете добавить следующее, чтобы скрыть файлы .js и .js.map

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

Как этот другой ответ объясняет, большинство людей, вероятно, только хотят скрыть файлы .js, когда есть соответствующий файл .ts.

Итак, вместо этого:

"**/*.js": true

вы можете сделать:

"**/*.js": {"when": "$(basename).ts"}
  • 9
    Идеальное решение. Кроме того, я подозреваю, что многие пользователи, заинтересованные в этом, также будут заинтересованы в сокрытии каталога node_modules. Это можно сделать так: "**/node_modules/": true
  • 0
    есть ли ярлык для деактивации / активации опции config.exclude files? когда-нибудь я хочу проверить что-то скрытое
Показать ещё 14 комментариев
172

Я нашел это: если у вас есть стандартные JS файлы, они тоже будут скрыты, что может не всегда быть тем, что вы хотите. Возможно, это лучше, поскольку он скрывает только файлы JS, соответствующие файлам TS...

{
    "files.exclude": {
        "**/.git": true,
        "**/.DS_Store": true,
        "**/*.js.map": true,
        "**/*.js": {"when": "$(basename).ts"}
    }
}
  • 5
    Можете ли вы опубликовать ссылку, где это задокументировано? Я хотел бы использовать более сложные формы «когда», но не могу найти, где это задокументировано.
  • 1
    Скрытие производных JS-файлов описано здесь: code.visualstudio.com/docs/languages/…
Показать ещё 3 комментария
91

Я действительно не знаю, как это реализовано, но для скрытия файлов .js работает:

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

Для скрытия файлов .js.map работает:

"**/*.js.map": {"when": "$(basename)"}
  • 6
    Это решение также обрабатывает .js.map , поскольку код Visual Studio интерпретирует $(basename) как все перед финалом . , Можно упростить до "**/*.map: {"when": "$(basename)"} , но это исключит любые файлы .map которые имеют соответствующий файл не .map .
46

Когда вы работаете с TypeScript, вы часто не хотите видеть созданные файлы JavaScript в проводнике или в результатах поиска. VS Code предлагает возможности фильтрации с настройкой files.exclude (Файл > Настройки > Параметры рабочей области), и вы можете легко создать выражение, чтобы скрыть эти производные файлы:

"**/*.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

23

John Papa Twitter LINK говорит следующее:

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

Из официального документа:

чтобы исключить файлы JavaScript, сгенерированные из исходных файлов .ts и .tsx, используйте это выражение:

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

Это небольшая хитрость. В качестве ключа используется шаблон поиска. Приведенные выше настройки используют два разных шаблона глобуса для предоставления двух уникальных ключей, но при поиске все равно будут совпадать те же файлы.

ОБНОВЛЕНИЕ 3/3/2017: с этим трюком у нас возникла проблема с "поиском в папке". Пожалуйста, смотрите вопрос

5

Добавьте следующие строки на панели "Настройки пользователя", чтобы переопределить "Настройки по умолчанию". Вы можете скрыть файлы {basename}.js и {basename}.js.map, когда создаете файл как {basename}.ts.

"files.exclude": {
        "**/*.js": {
            "when": "$(basename).ts"
        },
        "**/*.js.map": {
            "when": "$(basename)"
        }        
    }
  • 0
    Этот работал для меня для файлов исходных карт. Спасибо @mutlugokhan. Sagolasin.
5

Добавьте эти настройки в settings.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

    }
}

Если параметр settings.json недоступен, нажмите "Файл" --- > Настройки Параметры рабочей области.

  • 0
    Где находится этот файл ---> Настройки -> Настройки рабочего пространства? Когда я захожу в Файл, у меня нет ничего, связанного с настройками и рабочими областями, поэтому я должен быть не в том месте. Для вашей информации я использую Visual Studio 2017 Enterprise.
  • 2
    это для кода против, а не против2017
4

Возможно, лучше скрыть файлы .map и .js, когда они соответствуют соответствующему файлу .ts.
Вы можете сделать это, скопировав следующие строки в настройках пользователя VS (Настройки > Настройки пользователя):

// Workspace settings
"files.exclude": {
        "**/*.js":  {"when": "$(basename).ts"},
        "**/*.map": true
 }
  • 0
    Это скроет все файлы с именами, заканчивающимися на .map .
3

1. Входит в настройки> настройки

Изображение 3462

2. Нажмите "Редактировать в settings.json" (оно внизу изображения) Изображение 3463

3. Обновите объект JSON, как вы можете видеть на изображении. Затем сохраните ваши изменения Ctrl + S и все.

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

Изображение 3464] 3

3

В VS-коде перейдите в "Код" (или "Файл для пользователей Windows" ) > "Настройки" > "Параметры рабочей области" и добавьте этот фрагмент кода:

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню