typescript - tsconfig.json'da alt dizinleri hariç tut


TypeScript 1.8.2'yi yükledim ve Visual Studio 2015 kullanıyorum. Basit bir projem var ve tsconfig.json dosyasından klasörleri hariç tutarken sorun yaşıyorum. Sorun, typings/browser.d.ts dosyasını ve typings/browser klasörünü hariç tutmak istiyorum. Ama durum böyle değil.

Bir alt klasörü hariç tutmak konusunda problemim yok, ama bir alt-alt klasörü mü?

[NOT] Sorunun sadece Visual Studio'dan derlediğimde ortaya çıktığını fark ettim! Komut satırından tsc ile derlersem hiçbir sorun yok. Visual Studio'da başka bir TypeScript sürümüm olabilir mi? Bunu nasıl kontrol edebilirim?

Bu benim tsconfig.json dosyam:

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "moduleResolution": "node",
    "sourceMap": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "removeComments": false,
    "noImplicitAny": false
  },
  "exclude": [
    "node_modules",
    "public",
    "typings/browser",
    "typings/browser.d.ts"
  ]
}

Daha büyük bir projem var, burada jspm kullanıyorum ve jspm paket klasörünü hariç tutmam gerekiyor, bu klasör public'in bir alt klasörü olarak bulunuyor.

Cevap #1

Şunu deneyin:

{
  "compilerOptions": {/* ... */},

  "exclude": [
    "node_modules",
    "public",
    "typings/browser.d.ts",
    "typings/browser/**"
  ]
}

Cevap #2

Görünüşe göre bu, TypeScript'in daha derin dizin yapısına ait yolları/patternleri hariç tutamamasıyla ilgili bir sorun. Bu, "typescript@^3.4.5" sürümünde hâlâ bir sorun.

Bunu düzeltmek için, her test çalıştırmasından önce Dist dizinimi "rimraf dist" ile temizlemeye başladım.

"test:unit": "npm run clean && stencil test --spec --snapshot",

Biliyorum bu bir hile, ama işe yarıyor.

İlgili makaleler