Visual Studio कोड में .js.map फ़ाइलें छिपाएँ


320

मैं Visual Studio कोड में एक टाइपस्क्रिप्ट प्रोजेक्ट पर काम कर रहा हूं .js.mapऔर .jsफ़ाइल एक्सप्लोरर में दिखाई देने वाली (और शायद यहां तक ​​कि ) फाइलों को छिपाना चाहूंगा ।

क्या .tsफ़ाइल एक्सप्लोरर में केवल फाइलों को प्रदर्शित करना संभव है ?

जवाबों:


641

आपकी सेटिंग में (या तो उपयोगकर्ता या कार्यक्षेत्र) एक सेटिंग है जिसे आप अपनी पसंद की किसी भी चीज़ को छिपाने के लिए ट्वीक कर सकते हैं:

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

तो आप छिपाने .jsऔर .js.mapफ़ाइलों में निम्नलिखित जोड़ सकते हैं

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

जैसा कि इस अन्य उत्तर में बताया गया है , ज्यादातर लोग शायद केवल .jsफाइलों को छुपाना चाहते हैं जब एक मेल .tsफ़ाइल होती है।

इसलिए करने के बजाय:

"**/*.js": true

आप करना चाहते हैं:

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

10
सही समाधान। जोड़ने के लिए, मुझे संदेह है कि इसमें रुचि रखने वाले कई उपयोगकर्ता नोड_मॉड्यूल निर्देशिका को छिपाने में भी रुचि लेंगे। इस तरह से किया जा सकता है:"**/node_modules/": true
जोश

वहाँ files.exclude config विकल्प को निष्क्रिय / सक्रिय करने का एक शॉर्टकट है? कभी-कभी मैं छिपे हुए somethings की जांच करना चाहता हूं
आल्सुलाबुई

103
"**/*.js": {"when": "$(basename).ts"},"**/*.map": {"when": "$(basename).map"}
इरिस्तोना

1
@aaalsubaie फ़ाइल को फ़िल्टर करने को सक्रिय / निष्क्रिय करने के लिए, Marketplace पर एक एक्सटेंशन उपलब्ध है जो बाज़ार
AJ Qarshi

2
के "**/*.map": {"when": "$(basename).map"}रूप में ही है "**/*.map": true?
जीडीबीजे

190

मैंने यह पाया है, यदि आपके पास मानक जेएस फाइलें हैं तो ये भी छिपी होंगी जो कि हमेशा वह नहीं हो सकती जो आप चाहते हैं। शायद यह बेहतर है क्योंकि यह केवल जेएस फाइलों को छुपाता है जो टीएस फाइलों से मेल खाते हैं ...

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

5
क्या आप एक लिंक पोस्ट कर सकते हैं जहां यह प्रलेखित है? मैं "जब" के अधिक जटिल रूपों का उपयोग करना चाहता हूं, लेकिन यह नहीं पाया जा सकता है कि यह कहां से प्रलेखित है।
मासिम्प्लो

1
यहां प्राप्त जेएस फाइलों को छुपाया गया
स्टुअर्ट हॉलोज़

4
कैसे आप "जब" पैटर्न .js.map फ़ाइलों के लिए मिलान, या ".min.css" को एससीएस संकलन और छोटा करने के बाद एक ही करते हैं? वे $ (
बेसेनमे

यह चतुर है, लेकिन कोणीय की तरह कुछ के साथ काम नहीं करता है। सब कुछ file.component.ts या file.module.ts नाम दिया गया है
बेंटऑन कोडिंग

जब ts फ़ाइलें किसी भिन्न फ़ोल्डर में हों, तो क्या होगा?
Th3B0Y

98

मैं वास्तव में नहीं जानता कि यह कैसे लागू किया जाता है लेकिन .jsफाइलों को छिपाने के लिए काम करता है:

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

.js.mapफ़ाइलों को छिपाने के लिए काम करता है:

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

6
यह समाधान भी संभालता है .js.map, क्योंकि विज़ुअल स्टूडियो कोड अंतिम से पहले$(basename) सब कुछ होने की व्याख्या करता है .। करने के लिए सरल हो सकता है "**/*.map: {"when": "$(basename)"}, लेकिन इस बहिष्कृत कर देगा किसी भी .map जो एक इसी गैर है फ़ाइलें .mapफ़ाइल।
नजाल नॉर्डमार्क

44

जब आप टाइपस्क्रिप्ट के साथ काम कर रहे होते हैं, तो आप अक्सर एक्सप्लोरर फाइल को खोजकर्ता या खोज परिणामों में देखना नहीं चाहते हैं। VS कोड एक 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


22

जॉन पापा ट्विटर लिंक का कहना है कि निम्नलिखित का उपयोग करें:

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

15

से आधिकारिक दस्तावेज़ :

.ts और .tsx स्रोत फ़ाइलों से उत्पन्न जावास्क्रिप्ट फ़ाइलों को बाहर करने के लिए, इस अभिव्यक्ति का उपयोग करें:

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

यह थोड़ा मुश्किल है। खोज ग्लोब पैटर्न एक कुंजी के रूप में उपयोग किया जाता है। ऊपर की सेटिंग्स दो अलग-अलग ग्लोब पैटर्न का उपयोग करके दो अद्वितीय कुंजी प्रदान करती हैं लेकिन खोज अभी भी एक ही फाइल से मेल खाएगी।

UPDATE 10/3/2017: इस ट्रिक से हमें "फ़ोल्डर में खोज" की समस्या है। कृपया मुद्दे को देखें


1
इसके लिए एक और समाधान है। मैंने इसे नीचे एक उत्तर के रूप में पोस्ट किया है।
ज़च पोस्टेन 18

8

1. वरीयताएँ> सेटिंग्स पर जाएं

यहां छवि विवरण दर्ज करें

2. "सेटिंग पर संपादित करें। क्लिक करें" (यह छवि के तल पर है)

यहां छवि विवरण दर्ज करें

3. ऑब्जेक्ट जोंस को अपडेट करें जैसा कि आप इमेज में देख सकते हैं। फिर अपने परिवर्तनों को सहेजें Ctrl + Sऔर बस।

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

यहां छवि विवरण दर्ज करें


6

इन सेटिंग्स को अपनी सेटिंग्स में जोड़ें । अपने .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

    }
}

यदि सेटिंग्स .json उपलब्ध नहीं है, तो फ़ाइल पर क्लिक करें ---> प्राथमिकताएँ -> कार्यक्षेत्र सेटिंग्स।


यह फ़ाइल कहाँ है ---> प्राथमिकताएँ -> कार्यक्षेत्र सेटिंग्स? जब मैं फ़ाइल पर जाता हूं तो मेरे पास प्राथमिकता और कार्य स्थान से संबंधित कुछ भी नहीं होता है, इसलिए मुझे गलत जगह पर होना चाहिए। आपकी जानकारी के लिए मैं Visual Studio 2017 Enterprise का उपयोग कर रहा हूं।
MHOOS

5

कृपया "डिफ़ॉल्ट सेटिंग्स" को ओवरराइड करने के लिए "उपयोगकर्ता सेटिंग्स" पैनल में निम्नलिखित पंक्तियाँ जोड़ें। जब आप फ़ाइल को {.enename} .ts के रूप में बनाते हैं तो आप {basename} .js और {basename} .js.map छिपा सकते हैं।

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

यह एक मेरे लिए सोर्समैप फ़ाइलों के लिए काम करता है। साभार @ ममलुगोखन Sagolasin।
सेरेग्वेद्रिन

4

हो सकता है कि जब वे अपनी संबंधित फ़ाइल से मेल खाते हों, तो उन्हें छिपाना .mapऔर .jsफ़ाइलों को रखना बेहतर होता है .ts
आप वीएस उपयोगकर्ता सेटिंग्स (प्राथमिकताएँ> उपयोगकर्ता सेटिंग्स) में निम्नलिखित पंक्तियों को कॉपी करके ऐसा कर सकते हैं:

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

इसमें समाप्त होने वाले नामों वाली सभी फाइलें छिप जाएंगी .map
रॉय टिंकर

3

वीएस कोड में कोड (या विंडोज उपयोगकर्ताओं के लिए फ़ाइल) पर जाएं> प्राथमिकताएं> कार्यक्षेत्र सेटिंग्स और इस कोड को जोड़ दें स्निपेट:

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

0

दो अलग-अलग स्थितियों के आधार पर फ़ाइल ग्लोब को बाहर करने के लिए अभी भी कोई आधिकारिक समाधान नहीं है। इस मुद्दे को देखें ।

नहीं है एक समाधान है, हालांकि, दो अलग अलग ग्लोब पैटर्न जो एक ही फ़ाइलों को लक्ष्य परिभाषित करने के लिए:

{
    "files.exclude": {
        "**/*.js": { "when": "$(basename).ts"},
        "**/*?.js": { "when": "$(basename).tsx"}
    }
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.