Visual Studio Code hangi TypeScript sürümünü kullanıyor? Nasıl güncellenir?


111

Visual Studio Code'da hangi TypeScript sürümünün kullanıldığını nasıl anlayabilirim? Özellikle TypeScript 1.8.10 ve VSCode 1.4.0 kullanıyordum. VSCode'u ilk olarak 1.5.3 olan en son sürüme güncelledim. Ancak komut satırından kontrol ettiğimde, TypeScript sürümümün hala 1.8.10 olduğunu gördüm. Bu yüzden TypeScript'i komut satırından güncelledim ve şimdi 2.0.3.

Visual Studio Code'un 2.0.3 sürümünü kullanıp kullanmadığından emin olmanın bir yolu var mı?

TypeScript'i en son yayınlanan sürüme otomatik olarak güncelleyecek Visual Studio Code'u güncellemek için bir yöntem var mı, yoksa TypeScript güncellemesinin bağımsız olarak yapılması mı gerekiyor?


tsc --version ??
Hackerman

Bunun bir proje dosyası ayarı olduğuna inanıyorum. Proje dosyasını (bir .csproj dosyası gibi) not defteri ile açarsanız, projeyi bilgisayarda yüklü olan en son sürümü kullanmaya zorlaması gereken typcript sürüm öğesini kaldırabilirsiniz.
Igor

@Hackerman Hayır, bu size sadece global TSC versiyonunu gösteriyor.
Fabian Lauer

Yanıtlar:


191

TypeScript otomatik olarak güncellenebilir mi?

VS Code, TypeScript'in son kararlı sürümüyle birlikte gelir.

- VS Code belgelerinden

Bu , VS Code tarafından kullanılan TypeScript sürümünü otomatik olarak yükseltmenin bir yolu olmadığı anlamına gelir . Bununla birlikte, VS Code'un kullandığı TypeScript sürümünü, kullanıcı ayarlarını veya çalışma alanı ayarlarını değiştirerek geçersiz kılabilirsiniz.


VS Code hangi TypeScript sürümünü kullanıyor?

Bir TypeScript dosyası açtığınızda, VS Code, ekranın sağ alt tarafındaki durum çubuğunda TypeScript sürümünü görüntülemelidir:

VS Code durum çubuğu TypeScript sürümü


Global TypeScript sürümünü değiştirme

  1. İstenilen TypeScript sürümünü global olarak kurun, örneğin npm install -g typescript@2.0.5
  2. VS Kodu Kullanıcı Ayarlarını açın ( F1> Open User Settings)
  3. Güncelle / Ekle "typescript.tsdk": "{your_global_npm_path}/typescript/lib"npm root -g yazarak {your_global_npm_path} bilgisini öğrenebilirsiniz

Şimdi VS Code ile açtığınız tüm projeler, elbette bunu geçersiz kılan bir çalışma alanı ayarı yoksa bu TypeScript sürümünü kullanacaktır.


Yerel TypeScript sürümünü değiştirme

  1. Projeyi VS Code'da açın
  2. Örneğin istenen TypeScript sürümünü yerel olarak kurun npm install --save-dev typescript@2.0.5

    --save-devProjenizin güncelleyecek package.jsonbir şekilde yüklü typescript versiyonunu ekleyerek devDependency.

  3. VS Code Çalışma Alanı Ayarlarını Aç ( F1> Open Workspace Settings)

  4. Güncelle / Ekle "typescript.tsdk": "./node_modules/typescript/lib"

    Artık yalnızca bu TypeScript sürümünü kurduğunuz proje bu TypeScript sürümünü kullanacak, genel yükleme bu projede VS Code tarafından yok sayılacaktır.

  5. typescript.tsdkGiriş eklendikten sonra, yeni sürümü seçmek için VS Kodu Kullanıcı Arabirimini kullanmak da gereklidir:

    • VS Code alt bilgisinde görüntülenen sürüme tıklayın:

      vs kod altbilgisi

    • Kullanıcı arayüzünde seçin:

      kullanıcı arayüzünde ts sürümünü seçin


Ayrıca bakınız:


3
Bilginize Windows'tayım, genel düğüm modülleri klasörümün tam yolunu koymak zorunda kaldım - C:\\Users\\myname\\AppData\\Roaming\\npm\\node_modules\\typescript\\lib. Sizinkini npm root -gkomut satırında iki kez kontrol edebilirsiniz . Aksi takdirde, bu muhtemelen cevap olarak işaretlenmelidir @Richard Fuhr
Cody

Bu ayarın eklenmesi, visual studio kodunun tüm daktilo dil özelliklerini tamamen devre dışı bırakmasına neden oldu. Aradığınız cevap bu değil.
BentOnCoding

3
@BentOnCoding Bu hiçbir şeyi devre dışı bırakmaz. tsdkYoldaki yazım hatalarını kontrol edin ve deponuzda TypeScript'in kurulu olduğundan emin olun. Ayrıca, 11 kişi bunu olumlu oy verecek kadar doğru buldu ;-)
Fabian Lauer

VS Code artık TypeScript sürüm güncellemelerini otomatik olarak alıyor gibi görünüyor, bu nedenle buradaki yanıt artık güncel olmayabilir.
Mickey Segal

1
Bu ayar bunun yerine bir çalışma alanı ayarına uygulanabilir, böylece özellikle belirli bir sürümü hedefleyen bir proje bu şekilde kalacak şekilde yapılandırılabilir. Ayrıca NOT MSI'ya hedefleyemeyeceğinizi onlar uyumlu olmayan versiyonlarını yüklü. Şu siteye bakın: code.visualstudio.com/docs/typescript/typescript-compiling
Itanex

20

Visual Studio Code, kendi sabit TypeScript sürümüyle birlikte gelir, ancak belgelerinde açıklandığı gibi daha yeni bir sürüme geçebilirsiniz.

VS Code, TypeScript'in son kararlı sürümüyle birlikte gelir. TypeScript'in daha yeni bir sürümünü kullanmak istiyorsanız , TypeScript tsserver.js dosyasını içeren bir dizine işaret eden typescript.tsdk ayarını ( Dosya > Tercihler > Kullanıcı / Çalışma Alanı Ayarları ) tanımlayabilirsiniz .
...
Örneğin:

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

Benim tsc --version 2.0.3 ama Mac'imde tsserver.js dosyasını bulamadığından VSCode
Richard

Bu ayarın eklenmesi, visual studio kodunun tüm daktilo dil özelliklerini tamamen devre dışı bırakmasına neden oldu. Aradığınız cevap bu değil.
BentOnCoding

Sanırım burada daha net bir şekilde açıklandı gist.github.com/tonysneed/bb6d442103a057578a9498f106e45ac5
Gregor Schmitz

17

Visual Studio Code'un 2.0.3 sürümünü kullanıp kullanmadığından emin olmanın bir yolu var mı?

Visual Studio Code'da bir TypeScript dosyası açın ve sağ altta kullandığı TypeScript sürümünü göreceksiniz:

görüntü açıklamasını buraya girin

TypeScript'i en son yayınlanan sürüme otomatik olarak güncelleyecek Visual Studio Code'u güncellemek için bir yöntem var mı, yoksa TypeScript güncellemesinin bağımsız olarak yapılması mı gerekiyor?

Bunu yapma şeklim, Visual Studio Code'a TypeScript npm modülünüzün kurulu olduğu klasörü açıkça söylemektir. Ben Windows'tayım, bu yüzden TypeScript ( npm install -g typescript) ' i yüklemek için npm komutunu çalıştırdıktan sonra , bu klasöre yükleyecektir:

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

Dolayısıyla, Visual Studio libCode'a TypeScript npm kurulumunuzun klasörünü kullanmasını söylemeniz gerekir . Bunu şu şekilde yaparsınız:

  1. VS Code ayarlarını açın (Dosya -> Tercihler -> Ayarlar)

  2. typescript.tsdkAyarı aragörüntü açıklamasını buraya girin

  3. Npm ile typescript yüklü nerede bulun: npm list -g typescript. Benim durumumda geri döndüC:\Users\username\AppData\Roaming\npm

  4. Şu typescript.tsdkayarın değerini geçersiz kılın : C:\\Users\\username\\AppData\\Roaming\\npm\\node_modules\\typescript\\lib Geriye doğru eğik çizgilerle doğru şekilde kaçan bir dizeye sahip olmak için geriye doğru eğik çizgi kullanımına dikkat edin.

  5. Bir TypeScript dosyası açıp, sağ alttaki TypeScript sürüm numarasını tıklatarak ve görev penceresinde VS Code'un 4. adımda belirtilen dizinden TypeScript yüklediğini görerek VS Code'un Intellisense için TypeScript'in npm sürümünü kullandığını doğrulayın:

görüntü açıklamasını buraya girin

  1. Bu klasöre gidip dosyanın adını değiştirerek VS Code'un derleme için doğru TypeScript sürümünü kullandığını doğrulayın:

C: \ Users \ kullanıcı adı \ AppData \ Roaming \ npm \ tsc.cmd (tsc1.cmd gibi bir şeye)

Şimdi VS Kodunda derlemeyi deneyin (Görevler -> Görevleri Çalıştır -> tsc: build - tsconfig.json) ve VS Code terminal penceresinde bu hata mesajını almalısınız:

'tsc' is not recognized as an internal or external command, operable program or batch file.
The terminal process terminated with exit code: 1
  1. Dosyayı tekrar tsc.cmd olarak değiştirin ve artık global olarak yüklenmiş TypeScript düğüm paketi için VS Code'da Intellisense oluşturabilir ve sahip olabilirsiniz.

2
Bu, neden bu bilgilerin zaten% 99'una sahip olan yanıtın bir düzenlemesi değildi?
SgtPooki

Sanırım asla bilemeyeceğiz
Denny

4

Alt çubukta listelenen bir sürüm numarası görmelisiniz:

görüntü açıklamasını buraya girin

Numaraya (yukarıdaki 2.4.0) tıklarsanız, kullanmak istediğiniz sürümü seçmeniz için bir seçenek sunulacak:

görüntü açıklamasını buraya girin

İstediğiniz sürümü görmüyorsanız bu, muhtemelen yüklü olmadığı ve yüklemeniz gerektiği anlamına gelir.

npm install -g typescript@2.7.2

2.7.2Yüklemek istediğiniz sürümle değiştirin .


1

Mac'imde Spotlight'ı kullandığımda tsserver.js dosyasını bulamasam da, mdfind kullanarak tekrar denedim ve konumunu "/ usr / local / lib / node_modules / typescript / lib /" olarak buldum

Bu yüzden, settings.json'daki Çalışma Alanı ayarlarımı düzenlerken bu yolu kullandım

Şimdi en son TypeScript sürümümü kullanıyorum ve VSCode bana en son sürümümü kullandığımı söylüyor.


0

Benzer bir sorun yaşadım ve şimdi sistemimdeki ortam değişkenlerini değiştirerek TypeScript'in güncel bir sürümüne sahip olmayı başardım. Benim durumumda, 2'den daha yüksek bir TypeScript sürümüne ihtiyacımız var. Ama sadece 1.8.3 sürümünü kullanabildim. İlk şey, sistem ortam değişkenlerime gittim ve yol değişkenini kontrol ettim. Orada TypeScript 1.8.3 sürümüne bir referans buldum.

C: \ Program Dosyaları (x86) \ Microsoft SDKs \ TypeScript \ 1.8.3 \

Ana dizini kontrol ettiğimde, bu aynı zamanda o dizinde kurulu en yüksek sürümdü. En son sürümü global olarak yükleyerek bunu burada da göreceğimi düşünürdüm ama orada değil. Burada gördüğünüz sürüm, Visual Studio ile yüklenen sürümdür (görsel stüdyo kodu değil).

Bu yüzden Visual Studio'ya gittim ve TypeScript kitaplığını Seçenekler> Uzantılar ve Güncellemeler aracılığıyla en son sürüme güncelledim. Orada TypeScript'in en son sürümünü aradım ve yükledim.

Bu, daha önce bahsedilen ana dizinde yeni bir sürümü kullanılabilir hale getirdi. Daha sonra yol değişkenini şu şekilde değiştirdim:

C: \ Program Dosyaları (x86) \ Microsoft SDKs \ TypeScript \ 2.2 \

Şimdi VS Kodunu açıp tsc -v yazdığımda en son sürümü kullandığımı görüyorum. Artık uyuşmazlık mesajı yok, vb. Umarım bu size biraz yardımcı olur.


0

Typescript paketinde bir derleyici ve bir dil hizmeti vardır. VScode, derleyiciyle birlikte bir Typescript dil hizmetiyle birlikte gelir. Diğer cevapların gösterdiği gibi sağ altta dil hizmetini görebilirsiniz, ancak hangi derleyici sürümünün kullanıldığını göremezsiniz.

Derleyici ve dil hizmeti için farklı sürümlere sahip olabilirsiniz.


0

node_modulesHer yeni çalışma alanı kurduğunuzda yapılandırmanıza gerek kalmadan, çalışma alanınızda yüklü Typescript sürümünü otomatik olarak kullanmak için , Kullanıcı Ayarları JSON'da ( Çalışma Alanı değil ) varsayılan Typescript ayarını göreceli bir yol kullanacak şekilde ayarlayabilirsiniz :

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

Şimdi, "TypeScript Sürümünü Seç ..." komutunu çalıştırdığınızda, "VS Kodunun Sürümü" her zaman "Çalışma Alanı Sürümü" ile aynı olacaktır:

'TypeScript Sürümünü Seç ...' komutu

Bunun tek potansiyel dezavantajı, çalıştığınız çalışma alanında her zaman Typescript yüklü olması gerektiği anlamına gelir . Yine de, herhangi bir yerde Typescript yazıyorsanız, bunun makul bir beklenti olduğunu düşünüyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.