typescript - როდის გამოიყენება tsconfig.vitest.json სტანდარტული vue@3 პროექტში?
როდესაც მე ვქმნი სტანდარტულ vue@3 პროექტს (npm init vue@3), მე მივიღებ რამდენიმე tsconfig ფაილს. ერთ-ერთი მათგანია tsconfig.vitest.json. როდის გამოიყენება სინამდვილეში ეს ფაილი? მე ვხედავ, რომ ის გამოიყენება "type check"-ისთვის (package.json-დან):
"scripts": {
"type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false"
},
თუმცა, მის სახელწოდებას ის მატებს გულისხმობს, რომ ის უნდა გამოიყენონ, როდესაც ვიტესტს აწარმოებთ პირდაპირ. თუმცა მე ვერ ვხედავ არაფერს, რაც გამოიწვევდა ვიტესტს ამ კონფიგურაციის ფაილის გამოყენებას. ვიტესტის კონფიგურაციის ფაილის სტანდარტული სახელწოდებაა vitest.config.ts. მაშინ როდის, რა პირობებში, გამოიყენება ფაილი tsconfig.vitest.json?
პასუხი #1
tsconfig.vitest.json არის TypeScript-ის კონფიგურაციის ფაილი, რომელიც მხოლოდ TypeScript-ისთვისაა სასარგებლო, ის არაფერს ცვლის Vitest-ის გაშვებისთვის.
ეს ფაილი გამოსადეგია იმიტომ, რომ შეგიძლია ჰქონდეს სხვადასხვა typescript კონფიგურაციები თქვენს აპლიკაციის ფაილებსა და ტესტის სპეციფიკაციის ფაილებს შორის. ეს უმეტესად სასურველია იმიტომ, რომ თქვენი აპლიკაციის ფაილები მუშაობენ ბრაუზერში, ხოლო ტესტები ნოდის გარემოში, სადაც მათ შეუძლია წვდომა ნოდის API-ებზე, როგორიცაა fs.
მაგალითი :
// AppFile.js
import fs from 'fs' // will report a typescript error
// __tests__/myTest.spec.js
import fs from 'fs' // OK
ეს არის ეს ხაზზე tsconfig.vitest.json, რაც საშუალებას აძლევს Node API-ის გამოყენებას:
"types": ["node", "jsdom"]
პასუხი #2
ეს არის კონფიგურაცია tsc კომპილატორისთვის, რომელზეცა დაფუძნებულია vue-tsc.
