Visual Studio कोड का उपयोग करके टाइपस्क्रिप्ट संस्करण क्या है? इसे कैसे अपडेट करें?


111

मैं कैसे बता सकता हूं कि Visual Studio कोड में टाइपस्क्रिप्ट के किस संस्करण का उपयोग किया जा रहा है? विशेष रूप से, मैं टाइपस्क्रिप्ट 1.8.10 और VSCode 1.4.0 का उपयोग कर रहा था। मैंने सबसे पहले VSCode को नवीनतम संस्करण में अपडेट किया, जो 1.5.3 था। लेकिन कमांड लाइन से जाँच करने पर, मैंने देखा कि मेरा टाइपस्क्रिप्ट संस्करण अभी भी 1.8.10 का था। इसलिए मैंने कमांड लाइन से टाइपस्क्रिप्ट को अपडेट किया, और यह अब 2.0.3 है।

क्या यह सुनिश्चित करने का कोई तरीका है कि दृश्य स्टूडियो कोड संस्करण 2.0.3 का उपयोग कर रहा है या नहीं?

क्या विज़ुअल स्टूडियो कोड को अपडेट करने की कोई विधि है जो स्वचालित रूप से नवीनतम रिलीज़ किए गए संस्करण में टाइपस्क्रिप्ट को अपडेट करेगा, या टाइपस्क्रिप्ट अपडेट को स्वतंत्र रूप से करना होगा?


tsc --version ??
20

मेरा मानना ​​है कि इसकी एक परियोजना फ़ाइल सेटिंग है। यदि आप नोटपैड के साथ प्रोजेक्ट फ़ाइल (जैसे .csproj फ़ाइल) खोलते हैं, तो आप टाइपस्क्रिप्ट संस्करण तत्व को हटा सकते हैं जो पीसी पर स्थापित नवीनतम संस्करण का उपयोग करने के लिए प्रोजेक्ट को बाध्य करना चाहिए।
इगोर

@Hackerman Nope, जो आपको वैश्विक TSC संस्करण दिखाता है।
फाबियान लाउर

जवाबों:


191

क्या टाइपस्क्रिप्ट को स्वचालित रूप से अपडेट किया जा सकता है?

टाइपस्क्रिप्ट के हाल के स्थिर संस्करण के साथ वीएस कोड जहाज।

- वीएस कोड डॉक्स से

इसका मतलब वीएस कोड द्वारा उपयोग किए जाने वाले टाइपस्क्रिप्ट संस्करण को स्वचालित रूप से अपग्रेड करने का कोई तरीका नहीं है । आप हालांकि टाइपस्क्रिप्ट वर्जन वीएस कोड का उपयोग उपयोगकर्ता सेटिंग्स या कार्यक्षेत्र सेटिंग्स को संशोधित करके कर सकते हैं।


क्या टाइपस्क्रिप्ट संस्करण वीएस कोड का उपयोग कर रहा है?

जब आप एक टाइपस्क्रिप्ट फ़ाइल खोलते हैं, तो वीएस कोड को स्क्रीन के नीचे दाईं ओर स्थित स्थिति पट्टी में टाइपस्क्रिप्ट संस्करण प्रदर्शित करना चाहिए:

वीएस कोड स्टेटस बार टाइपस्क्रिप्ट संस्करण


ग्लोबल टाइपस्क्रिप्ट संस्करण बदलना

  1. उदाहरण के लिए, विश्व स्तर पर वांछित टाइपस्क्रिप्ट संस्करण स्थापित करें npm install -g typescript@2.0.5
  2. VS कोड उपयोगकर्ता सेटिंग्स खोलें ( F1> Open User Settings)
  3. अपडेट / डालें "typescript.tsdk": "{your_global_npm_path}/typescript/lib"आप npm रूट -g लिखकर {your_global_npm_path} पता लगा सकते हैं

अब आपके द्वारा VS कोड के साथ खोले गए सभी प्रोजेक्ट इस टाइपस्क्रिप्ट संस्करण का उपयोग करेंगे, जब तक कि कोई कार्यक्षेत्र सेटिंग नहीं है जो इसे ओवरराइड करता है।


स्थानीय टाइपस्क्रिप्ट संस्करण बदलना

  1. VS कोड में प्रोजेक्ट खोलें
  2. उदाहरण के लिए, स्थानीय स्तर पर वांछित टाइपस्क्रिप्ट संस्करण स्थापित करें npm install --save-dev typescript@2.0.5

    --save-devअपने प्रोजेक्ट की अद्यतन करेगा package.json, टाइपप्रति संस्करण आप एक के रूप में स्थापित जोड़ने devDependency

  3. VS कोड कार्यक्षेत्र सेटिंग्स खोलें ( F1> Open Workspace Settings)

  4. अद्यतन / सम्मिलित "typescript.tsdk": "./node_modules/typescript/lib"

    अब आप केवल इस टाइपस्क्रिप्ट संस्करण को स्थापित करने वाले प्रोजेक्ट में टाइपस्क्रिप्ट संस्करण का उपयोग करेंगे, इस परियोजना में वीएस कोड द्वारा वैश्विक स्थापना को नजरअंदाज किया जाएगा।

  5. typescript.tsdkप्रविष्टि को जोड़ने के बाद नया संस्करण चुनने के लिए VS कोड UI का उपयोग करना आवश्यक है:

    • वीएस कोड पाद में प्रदर्शित संस्करण पर क्लिक करें:

      बनाम कोड पाद

    • UI में इसका चयन करें:

      UI में ts संस्करण का चयन करें


यह सभी देखें:


3
FYI करें मैं विंडोज पर हूं, मुझे अपने ग्लोबल नोड मॉड्यूल फ़ोल्डर में पूरा रास्ता डालना पड़ा - C:\\Users\\myname\\AppData\\Roaming\\npm\\node_modules\\typescript\\lib। आप npm root -gकमांड लाइन में अपना चेक डबल कर सकते हैं । अन्यथा, इसे संभवतः @Richard Fuhr
Cody

इस सेटिंग को जोड़ने के कारण दृश्य स्टूडियो कोड पूरी तरह से सभी टाइपस्क्रिप्ट भाषा सुविधाओं को अक्षम कर देता है। यह वह उत्तर नहीं है जिसकी आपको तलाश है।
बेंटऑन कोडिंग

3
@BentOnCoding यह कुछ भी अक्षम नहीं करेगा। tsdkरास्ते में टाइपो की जाँच करें और सुनिश्चित करें कि टाइपस्क्रिप्ट आपके रेपो में स्थापित है। इसके अलावा, 11 अन्य लोगों ने इसे सही साबित करने के लिए पर्याप्त पाया ;-)
फाबियान लाउर

VS कोड अब टाइपस्क्रिप्ट वर्जन अपडेट अपने आप होने लगता है, इसलिए यहां उत्तर अब चालू नहीं हो सकता है।
मिकी सेगल

1
इस सेटिंग को इसके बजाय किसी कार्यस्थान सेटिंग पर लागू किया जा सकता है ताकि एक परियोजना जो विशेष रूप से एक विशिष्ट संस्करण को लक्षित कर रही है उसे उस तरह से रहने के लिए कॉन्फ़िगर किया जा सके। इसके अलावा, ध्यान दें कि आप एमएसआई स्थापित संस्करणों को लक्षित नहीं कर सकते जो वे संगत नहीं हैं। साइट देखें: code.visualstudio.com/docs/typescript/typescript-compiling
Itanex

19

Visual Studio Code, TypeScript के अपने स्थिर संस्करण के साथ आता है, लेकिन आप एक नए संस्करण में बदल सकते हैं, जैसा कि उनके डॉक्स में वर्णित है

टाइपस्क्रिप्ट के हाल के स्थिर संस्करण के साथ वीएस कोड जहाज। यदि आप टाइपस्क्रिप्ट के एक नए संस्करण का उपयोग करना चाहते हैं, तो आप typeScript.tsdk सेटिंग ( फ़ाइल > वरीयताएँ > उपयोगकर्ता / कार्यक्षेत्र सेटिंग्स ) को टाइपस्क्रिप्ट Tsserver.js फ़ाइल वाली निर्देशिका की ओर इशारा करते हुए परिभाषित कर सकते हैं ।
...
उदाहरण के लिए:

{
   "typescript.tsdk": "node_modules/typescript/lib"
}

मेरी tsc --version 2.0.3 है, लेकिन tsserver.js फ़ाइल को मेरे मैक पर नहीं खोज सकते हैं इसलिए VSCode में सेटिंग नहीं बदल सकते हैं
रिचर्ड

इस सेटिंग को जोड़ने के कारण दृश्य स्टूडियो कोड पूरी तरह से सभी टाइपस्क्रिप्ट भाषा सुविधाओं को अक्षम कर देता है। यह वह उत्तर नहीं है जिसकी आपको तलाश है।
बेंटऑन कोडिंग

मुझे लगता है कि यह अधिक स्पष्ट रूप से यहाँ वर्णित है। gist.github.com/tonysneed/bb6d442103a057578a9498f106e45ac5
ग्रेगर

17

क्या यह सुनिश्चित करने का कोई तरीका है कि दृश्य स्टूडियो कोड संस्करण 2.0.3 का उपयोग कर रहा है या नहीं?

Visual Studio कोड में एक टाइपस्क्रिप्ट फ़ाइल खोलें और नीचे दाईं ओर आपको टाइपस्क्रिप्ट का वह संस्करण दिखाई देगा जिसका वह उपयोग कर रहा है:

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

क्या विज़ुअल स्टूडियो कोड को अपडेट करने की कोई विधि है जो स्वचालित रूप से नवीनतम रिलीज़ किए गए संस्करण में टाइपस्क्रिप्ट को अपडेट करेगा, या टाइपस्क्रिप्ट अपडेट को स्वतंत्र रूप से करना होगा?

जिस तरह से मैं यह कर रहा हूं वह स्पष्ट रूप से दृश्य स्टूडियो कोड फ़ोल्डर को बताना है जहां आपका टाइपस्क्रिप्ट एनपीएम मॉड्यूल स्थापित है। मैं विंडोज पर हूं, इसलिए टाइप टाइपस्क्रिप्ट ( npm install -g typescript) स्थापित करने के लिए npm कमांड चलाने के बाद इसे इस फोल्डर में इंस्टॉल करेंगे:

C:\Users\username\AppData\Roaming\npm\node_modules\typescript\

इसलिए आपको libअपने टाइपस्क्रिप्ट npm इंस्टॉल के फ़ोल्डर का उपयोग करने के लिए Visual Studio कोड बताने की आवश्यकता है । आप इसके द्वारा करते हैं:

  1. VS कोड सेटिंग खोलें (फ़ाइल -> प्राथमिकताएं -> सेटिंग्स)

  2. typescript.tsdkसेटिंग के लिए खोजेंयहां छवि विवरण दर्ज करें

  3. पता लगाएं जहां NPM साथ टाइपप्रति स्थापित: npm list -g typescript। मेरे मामले में, यह वापस आ गयाC:\Users\username\AppData\Roaming\npm

  4. typescript.tsdkसेटिंग के मूल्य को ओवरराइड करें : C:\\Users\\username\\AppData\\Roaming\\npm\\node_modules\\typescript\\lib बैकवर्ड स्लैश के साथ ठीक से बच गए स्ट्रिंग के लिए डबल बैकवर्ड स्लैश के उपयोग पर ध्यान दें।

  5. पुष्टि करें कि VS कोड टाइपस्क्रिप्ट फ़ाइल खोलकर intellisense के लिए टाइपस्क्रिप्ट के npm संस्करण का उपयोग कर रहा है, नीचे दाईं ओर टाइपस्क्रिप्ट संस्करण संख्या पर क्लिक करके और कार्य विंडो में देख रहा है कि VS कोड चरण 4 में निर्दिष्ट निर्देशिका से टाइपस्क्रिप्ट लोड कर रहा है:

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

  1. पुष्टि करें कि VS कोड इस फ़ोल्डर में जाकर फाइल का नाम बदलने के लिए टाइपस्क्रिप्ट के सही संस्करण का उपयोग कर रहा है:

C: \ Users \ username \ AppData \ Roaming \ npm \ tsc.cmd (tsc1.cmx की तरह कुछ करने के लिए)

अब VS कोड (कार्य -> ​​रन कार्य -> ​​tsc: build - tsconfig.json) में निर्माण का प्रयास करें और आपको यह त्रुटि संदेश VS कोड टर्मिनल विंडो में मिलना चाहिए:

'tsc' is not recognized as an internal or external command, operable program or batch file.
The terminal process terminated with exit code: 1
  1. फ़ाइल को वापस tsc.cmd में बदलें और आपको अब वैश्विक स्तर पर स्थापित टाइपस्क्रिप्ट नोड पैकेज के लिए VS कोड में Intellisense का निर्माण करने और करने में सक्षम होना चाहिए

2
यह उस उत्तर का संपादन क्यों नहीं था जिसमें पहले से ही इस जानकारी का 99% था?
SgtPooki

मुझे लगता है कि हम कभी नहीं जान पाएंगे
डेनी

4

आपको नीचे पट्टी पर सूचीबद्ध एक संस्करण संख्या देखनी चाहिए:

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

यदि आप संख्या (2.4.0 ऊपर) पर क्लिक करते हैं तो आपको उस संस्करण को चुनने का विकल्प दिया जाएगा जिसे आप उपयोग करना चाहते हैं।

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

यदि आपको वह संस्करण नहीं दिखाई देता है जो आप चाहते हैं कि इसका अर्थ है कि यह शायद स्थापित नहीं है और आपको इसे स्थापित करना है।

npm install -g typescript@2.7.2

2.7.2उस संस्करण से बदलें जिसे आप इंस्टॉल करना चाहते हैं।


1

हालाँकि मुझे फ़ाइल tsserver.js नहीं मिली, जब मैंने अपने मैक पर स्पॉटलाइट का उपयोग किया था, तो मैंने mdfind का उपयोग करके फिर से कोशिश की, और मुझे इसका स्थान "/ usr / स्थानीय / lib / node_modules / टाइपस्क्रिप्ट / lib /" मिला।

इसलिए मैंने सेटिंग्स में अपने कार्यक्षेत्र सेटिंग्स को संपादित करते समय उस पथ का उपयोग किया। json

अब मैं टाइपस्क्रिप्ट के अपने सबसे हाल के संस्करण का उपयोग कर रहा हूं, और VSCode मुझे बताता है कि मैं अपने सबसे हाल के संस्करण का उपयोग कर रहा हूं।


0

मुझे इसी तरह की समस्या हुई है और अब मैं अपने सिस्टम में पर्यावरण चर को संशोधित करके टाइपस्क्रिप्ट के अप-टू-डेट संस्करण होने में सफल रहा। मेरे मामले में, हमें 2. से अधिक टाइपस्क्रिप्ट संस्करण की आवश्यकता है, लेकिन मैं केवल संस्करण 1.8.3 का उपयोग करने में सक्षम था। पहली बात यह है कि मैं अपने सिस्टम वातावरण चर में गया और पथ चर की जाँच की। वहां मुझे टाइपस्क्रिप्ट संस्करण 1.8.3 का संदर्भ मिला।

C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript \ 1.8.3 \

जब मैंने मूल निर्देशिका की जाँच की, तो यह उस निर्देशिका में स्थापित उच्चतम संस्करण भी था। मैंने नवीनतम संस्करण को स्थापित करके विश्व स्तर पर सोचा होगा, कि मैं इसे यहां भी देखूंगा लेकिन यह वहां नहीं है। आपके द्वारा यहां देखा गया संस्करण वह है जो विज़ुअल स्टूडियो (दृश्य स्टूडियो कोड नहीं) के साथ स्थापित किया गया है।

इसलिए मैंने विजुअल स्टूडियो में जाकर टाइप्स लाइब्रेरी को नवीनतम संस्करण में विकल्प> एक्सटेंशन और अपडेट के माध्यम से अपडेट किया। वहां मैंने टाइपस्क्रिप्ट के नवीनतम संस्करण की खोज की और इसे स्थापित किया।

इससे पहले उल्लेखित मूल निर्देशिका में एक नया संस्करण उपलब्ध हुआ। मैंने तब पथ चर को इसमें बदल दिया:

C: \ Program Files (x86) \ Microsoft SDKs \ TypeScript \ 2.2 \

जब मैं अब VS कोड खोलता हूं और tsc -v टाइप करता हूं, तो मैं देखता हूं कि मैं नवीनतम संस्करण का उपयोग कर रहा हूं। कोई बेमेल संदेश कोई और नहीं, आदि। यह आप लोगों को थोड़ा बाहर निकालने में मदद करता है।


0

टाइपस्क्रिप्ट पैकेज में एक संकलक और एक भाषा सेवा है। VScode एक टाइपस्क्रिप्ट भाषा सेवा के साथ आता है, संकलक के साथ नहीं। आप भाषा सेवा को नीचे दाईं ओर देख सकते हैं, जैसे अन्य उत्तर दिखाते हैं, लेकिन आप यह नहीं देख सकते हैं कि संकलक संस्करण का क्या उपयोग किया गया है।

आपके पास संकलक और भाषा सेवा के लिए अलग-अलग संस्करण हो सकते हैं।


0

अपने कार्यक्षेत्र में इंस्टॉल किए गए टाइपस्क्रिप्ट संस्करण को स्वचालित रूप से उपयोग करने के लिए node_modules, हर बार जब आप नया कार्यक्षेत्र सेट करते हैं, तो इसे कॉन्फ़िगर करने के बिना, आप एक रिश्तेदार पथ का उपयोग करने के लिए उपयोगकर्ता सेटिंग्स JSON ( नहीं कार्यक्षेत्र ) में डिफ़ॉल्ट टाइपस्क्रिप्ट सेटिंग सेट कर सकते हैं :

{
    // ... other User settings
    "typescript.tsdk": "./node_modules/typescript/lib"
}

अब, जब आप "Select Typecript संस्करण ..." कमांड चलाते हैं, तो "VS कोड का संस्करण" हमेशा "कार्यक्षेत्र संस्करण" के समान होगा:

'टाइपस्क्रिप्ट संस्करण का चयन करें ...' कमांड

इसका एकमात्र संभावित पहलू यह है कि इसका मतलब है कि आपको उस कार्यक्षेत्र में हमेशा टाइपस्क्रिप्ट की आवश्यकता है जो आप काम कर रहे हैं। हालाँकि, यदि आप कहीं भी टाइपस्क्रिप्ट लिख रहे हैं, तो मुझे लगता है कि यह एक उचित अपेक्षा है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.