Pertanyaan Bagaimana saya bisa mereferensikan file typescript tanpa path absolut?


Sejak naskah tampaknya tidak mendukung referensi path absolutSaya tidak bisa melihat bagaimana menjaga referensi saya tetap rapi. Saya punya file ts di banyak lokasi berbeda di struktur folder saya, dan harus benar-benar berhati-hati tentang maksud saya ..\Scripts\typings\jquery\jquery.d.ts atau ..\..\Scripts\typings\jquery\jquery.d.ts tampaknya benar-benar kludgy.

Disana apa saja cara untuk menentukan folder referensi akar, sehingga saya tidak harus menentukan semua jalur relatif ke jalur file saat ini, yang berbeda untuk setiap folder?


18
2017-11-08 22:32


asal


Jawaban:


Saat ini tidak ada cara untuk menentukan akar folder untuk digunakan dalam referensi.

Jalur file absolut memang berfungsi, tetapi pemeliharaan jalur yang secara umum berbicara dengan beberapa pengembang membuat ini kemungkinan non-starter untuk banyak proyek pengembangan TypeScript.

Telah ada diskusi pada CodePlex misalnya yang menyatakan permintaan serupa (tetapi tanpa resolusi). Karena file-file TypeScript berdiri sendiri, beberapa orang khawatir tentang memperkenalkan skema "proyek" seperti pada kompilator.

Beberapa pengembang akan menempatkan referensi yang paling sering dibutuhkan dalam satu file (disebut misalnya, _references.d.ts) dan daftar referensi ke file definisi di sana. Kemudian, file itu akan direferensikan dari file TypeScript lainnya. Ini menyederhanakan, tetapi tidak sepenuhnya menghilangkan masalah (karena Anda masih perlu menggunakan referensi file relatif dengan N level direktori yang berpotensi muncul):

/// <references path="../../../_references.d.ts." />

Tergantung pada berapa banyak file yang Anda miliki dan ukuran definisi, Anda mungkin menemukan bahwa file secara individual dikompilasi bahwa proses kompilasi akan memakan waktu lebih lama (karena menarik dalam definisi yang tidak terpakai dari _references.d.ts mengajukan). (Jika Anda memiliki misalnya, "compile on save" diaktifkan dalam IDE).


17
2017-11-09 15:55



Untuk menjaga referensi path relatif Anda rapi, tentukan alias path di dalam tsconfig.json Anda

Pertama-tama instal tspath alat npm untuk menyelesaikan jalur ts CATATAN: tspath membutuhkan sebuah node yang sangat baru-baru ini!

npm install -g tspath

Selanjutnya, tambahkan alias path ke tsconfig.json

"baseUrl": "./",
  "paths": {
    "@Scripts/*": ["./Scripts/typings/jquery/*"],
    "@Plugins/*": ["./MyPlugins/V2/*"]
  }

Sekarang gunakan alias Anda saat mereferensikan skrip Anda

@Scripts/jquery
@Plugins/myPlugin

Setelah Anda menjalankan compiler TypeScript, dari direktori proyek Anda, jalankan:

tspath

atau

tspath -f

untuk melewati prompt!

Baca lebih lanjut di: https://www.npmjs.com/package/tspath

Semoga ini yang Anda minta!


0
2018-01-14 21:17