இந்த ஆழமான tsconfig.json வழிகாட்டி மூலம் டைப்ஸ்கிரிப்ட் கட்டமைப்பில் தேர்ச்சி பெறுங்கள். திறமையான உருவாக்கத்திற்கு அத்தியாவசிய கம்பைலர் விருப்பங்கள், திட்ட அமைப்பு மற்றும் மேம்பட்ட கட்டமைப்புகளைக் கற்றுக்கொள்ளுங்கள்.
டைப்ஸ்கிரிப்ட் கட்டமைப்பு: ஒரு விரிவான tsconfig.json வழிகாட்டி
டைப்ஸ்கிரிப்ட், ஜாவாஸ்கிரிப்டின் ஒரு சூப்பர்செட், வலை மேம்பாட்டின் டைனமிக் உலகத்திற்கு ஸ்டேடிக் டைப்பிங்கைக் கொண்டுவருகிறது. டைப்ஸ்கிரிப்டின் முழு சக்தியையும் பயன்படுத்த, நன்கு கட்டமைக்கப்பட்ட tsconfig.json
கோப்பு மிக முக்கியமானது. இந்த வழிகாட்டி tsconfig.json
பற்றிய ஒரு விரிவான கண்ணோட்டத்தை வழங்குகிறது, இதில் அத்தியாவசிய கம்பைலர் விருப்பங்கள், திட்ட அமைப்பு மற்றும் மேம்பட்ட கட்டமைப்புகள் அடங்கும்.
tsconfig.json என்றால் என்ன?
tsconfig.json
கோப்பு என்பது ஒரு டைப்ஸ்கிரிப்ட் திட்டத்திற்கான கம்பைலர் விருப்பங்களைக் குறிப்பிடும் ஒரு கட்டமைப்பு கோப்பு ஆகும். இது டைப்ஸ்கிரிப்ட் குறியீட்டை ஜாவாஸ்கிரிப்டாக மாற்றுவது எப்படி என்று டைப்ஸ்கிரிப்ட் கம்பைலருக்குக் கூறுகிறது. திட்டத்தின் கட்டமைப்பை வரையறுப்பதற்கும், தொகுத்தல் விதிகளை அமைப்பதற்கும், மற்றும் மேம்பாட்டுக் குழு முழுவதும் நிலைத்தன்மையை உறுதி செய்வதற்கும் இந்தக் கோப்பு அவசியமானது, அந்தக் குழு ஒரே அலுவலகத்தில் இருந்தாலும் அல்லது பல கண்டங்களில் பரவி இருந்தாலும் சரி.
ஒரு tsconfig.json கோப்பை உருவாக்குதல்
ஒரு tsconfig.json
கோப்பை உருவாக்க, உங்கள் திட்டத்தின் ரூட் டைரக்டரிக்கு டெர்மினலில் சென்று பின்வரும் கட்டளையை இயக்கவும்:
tsc --init
இந்தக் கட்டளை பொதுவாகப் பயன்படுத்தப்படும் கம்பைலர் விருப்பங்களுடன் ஒரு அடிப்படை tsconfig.json
கோப்பை உருவாக்குகிறது. பின்னர் உங்கள் திட்டத்தின் குறிப்பிட்ட தேவைகளுக்கு ஏற்ப கோப்பைத் தனிப்பயனாக்கலாம். ஒரு பொதுவான tsconfig.json
கோப்பில் compilerOptions
, include
, மற்றும் exclude
போன்ற விருப்பங்கள் அடங்கும்.
அத்தியாவசிய கம்பைலர் விருப்பங்கள்
compilerOptions
பிரிவுதான் tsconfig.json
கோப்பின் இதயமாகும். இது டைப்ஸ்கிரிப்ட் கம்பைலரின் நடத்தையைக் கட்டுப்படுத்தும் பரந்த அளவிலான விருப்பங்களைக் கொண்டுள்ளது. இங்கே சில மிக முக்கியமான கம்பைலர் விருப்பங்கள்:
target
target
விருப்பம், உருவாக்கப்பட்ட ஜாவாஸ்கிரிப்ட் குறியீட்டிற்கான ECMAScript இலக்கு பதிப்பைக் குறிப்பிடுகிறது. பொதுவான மதிப்புகளில் ES5
, ES6
(ES2015), ES2016
, ES2017
, ES2018
, ES2019
, ES2020
, ES2021
, ES2022
, ESNext
ஆகியவை அடங்கும். உலாவி அல்லது Node.js பதிப்புகள் போன்ற நோக்கம் கொண்ட இயக்க சூழலுடன் இணக்கத்தன்மையை உறுதி செய்வதற்கு சரியான இலக்கைத் தேர்ந்தெடுப்பது முக்கியமானது.
உதாரணம்:
{
"compilerOptions": {
"target": "ES2020"
}
}
module
module
விருப்பம் மாட்யூல் குறியீடு உருவாக்க பாணியைக் குறிப்பிடுகிறது. பொதுவான மதிப்புகளில் CommonJS
, AMD
, System
, UMD
, ES6
(ES2015), ES2020
, மற்றும் ESNext
ஆகியவை அடங்கும். மாட்யூல் அமைப்பின் தேர்வு, இலக்கு சூழல் மற்றும் பயன்படுத்தப்படும் மாட்யூல் பண்ட்லர் (எ.கா., Webpack, Rollup, Parcel) ஆகியவற்றைப் பொறுத்தது. Node.js-க்கு, CommonJS
பெரும்பாலும் பயன்படுத்தப்படுகிறது, அதே நேரத்தில் நவீன வலைப் பயன்பாடுகளுக்கு, ஒரு மாட்யூல் பண்ட்லருடன் ES6
அல்லது ESNext
விரும்பப்படுகிறது. ESNext
ஐப் பயன்படுத்துவது, டெவலப்பர்கள் மிகச் சமீபத்திய அம்சங்களையும் மேம்படுத்தல்களையும் பயன்படுத்த அனுமதிக்கிறது, அதே நேரத்தில் இறுதி மாட்யூல் வடிவமைப்பைக் கையாள பண்ட்லரைச் சார்ந்திருக்கும்.
உதாரணம்:
{
"compilerOptions": {
"module": "ESNext"
}
}
lib
lib
விருப்பம், தொகுப்பில் சேர்க்கப்பட வேண்டிய லைப்ரரி கோப்புகளின் பட்டியலைக் குறிப்பிடுகிறது. இந்த லைப்ரரி கோப்புகள் உள்ளமைக்கப்பட்ட ஜாவாஸ்கிரிப்ட் API-கள் மற்றும் உலாவி API-களுக்கான டைப் டெபினிஷன்களை வழங்குகின்றன. பொதுவான மதிப்புகளில் ES5
, ES6
, ES2015
, ES2016
, ES2017
, ES2018
, ES2019
, ES2020
, ES2021
, ES2022
, ESNext
, DOM
, WebWorker
, ScriptHost
, ES2015.Core
, ES2015.Collection
, ES2015.Iterable
, ES2015.Promise
, ES2015.Proxy
, ES2015.Reflect
, ES2015.Generator
, ES2015.Symbol
, ES2015.Symbol.WellKnown
, ES2016.Array.Include
, ES2017.object
, ES2017.Intl
, ES2017.SharedMemory
, ES2017.String
, ES2017.TypedArrays
, ES2018.Intl
, ES2018.Promise
, ES2018.RegExp
, ES2019.Array
, ES2019.Object
, ES2019.String
, ES2019.Symbol
, ES2020.BigInt
, ES2020.Promise
, ES2020.String
, ES2020.Symbol.WellKnown
, ES2021.Promise
, ES2021.String
, ES2021.WeakRef
, ES2022.Error
, ES2022.Object
, ES2022.String
, மற்றும் பல அடங்கும். பொருத்தமான லைப்ரரிகளைத் தேர்ந்தெடுப்பது, இலக்கு சூழலுக்கான தேவையான டைப் தகவல்களை டைப்ஸ்கிரிப்ட் கம்பைலர் கொண்டிருப்பதை உறுதி செய்கிறது. DOM லைப்ரரியைப் பயன்படுத்துவது, டைப் பிழைகள் இல்லாமல் உலாவி-குறிப்பிட்ட API-களைப் பயன்படுத்தும் குறியீட்டைத் தொகுக்க திட்டத்தை அனுமதிக்கிறது.
உதாரணம்:
{
"compilerOptions": {
"lib": ["ES2020", "DOM"]
}
}
allowJs
allowJs
விருப்பம், டைப்ஸ்கிரிப்ட் கம்பைலரை ஜாவாஸ்கிரிப்ட் கோப்புகளை டைப்ஸ்கிரிப்ட் கோப்புகளுடன் சேர்த்துத் தொகுக்க அனுமதிக்கிறது. இது ஏற்கனவே உள்ள ஜாவாஸ்கிரிப்ட் திட்டங்களை படிப்படியாக டைப்ஸ்கிரிப்டிற்கு மாற்றுவதற்கு பயனுள்ளதாக இருக்கும். இதை true
என அமைப்பது, கம்பைலரை .js
கோப்புகளைச் செயலாக்க உதவுகிறது, இது ஒரு திட்டத்தில் டைப்ஸ்கிரிப்டை படிப்படியாக ஏற்றுக்கொள்ள அனுமதிக்கிறது.
உதாரணம்:
{
"compilerOptions": {
"allowJs": true
}
}
jsx
jsx
விருப்பம் JSX சிண்டாக்ஸை எவ்வாறு கையாள வேண்டும் என்பதைக் குறிப்பிடுகிறது. பொதுவான மதிப்புகளில் preserve
, react
, react-native
, மற்றும் react-jsx
ஆகியவை அடங்கும். preserve
வெளியீட்டில் JSX சிண்டாக்ஸை வைத்திருக்கிறது, அதே நேரத்தில் react
JSX-ஐ React.createElement அழைப்புகளாக மாற்றுகிறது. react-jsx
, React 17-ல் அறிமுகப்படுத்தப்பட்ட புதிய JSX மாற்றத்தைப் பயன்படுத்துகிறது, இதற்கு React-ஐ இம்போர்ட் செய்யத் தேவையில்லை. React அல்லது பிற JSX-அடிப்படையிலான லைப்ரரிகளைப் பயன்படுத்தும் திட்டங்களுக்கு சரியான JSX விருப்பத்தைத் தேர்ந்தெடுப்பது முக்கியமானது.
உதாரணம்:
{
"compilerOptions": {
"jsx": "react-jsx"
}
}
declaration
declaration
விருப்பம் ஒவ்வொரு டைப்ஸ்கிரிப்ட் கோப்பிற்கும் தொடர்புடைய .d.ts
டெக்லரேஷன் கோப்புகளை உருவாக்குகிறது. டெக்லரேஷன் கோப்புகளில் டைப் தகவல்கள் உள்ளன மற்றும் தொகுக்கப்பட்ட குறியீட்டைப் பயன்படுத்த மற்ற டைப்ஸ்கிரிப்ட் திட்டங்களால் பயன்படுத்தப்படுகின்றன. மீண்டும் பயன்படுத்தக்கூடிய லைப்ரரிகள் மற்றும் மாட்யூல்களை உருவாக்குவதற்கு டெக்லரேஷன் கோப்புகளை உருவாக்குவது அவசியமாகும். இந்த கோப்புகள் மற்ற டைப்ஸ்கிரிப்ட் திட்டங்கள் அசல் மூலக் குறியீட்டைத் தொகுக்கத் தேவையில்லாமல் லைப்ரரி வெளிப்படுத்தும் டைப்கள் மற்றும் இன்டர்ஃபேஸ்களைப் புரிந்துகொள்ள அனுமதிக்கின்றன.
உதாரணம்:
{
"compilerOptions": {
"declaration": true
}
}
sourceMap
sourceMap
விருப்பம் சோர்ஸ் மேப் கோப்புகளை உருவாக்குகிறது, இது உருவாக்கப்பட்ட ஜாவாஸ்கிரிப்ட் குறியீட்டை அசல் டைப்ஸ்கிரிப்ட் குறியீட்டிற்கு மீண்டும் மேப் செய்கிறது. உலாவிகள் மற்றும் பிற சூழல்களில் டைப்ஸ்கிரிப்ட் குறியீட்டைப் பிழைதிருத்தம் செய்வதற்கு சோர்ஸ் மேப்கள் அவசியமானவை. ஜாவாஸ்கிரிப்ட் குறியீட்டில் ஒரு பிழை ஏற்படும்போது, சோர்ஸ் மேப் டெவலப்பரை பிழைதிருத்தியில் தொடர்புடைய டைப்ஸ்கிரிப்ட் குறியீட்டைக் காண அனுமதிக்கிறது, இது சிக்கலைக் கண்டறிந்து சரிசெய்வதை எளிதாக்குகிறது.
உதாரணம்:
{
"compilerOptions": {
"sourceMap": true
}
}
outDir
outDir
விருப்பம் உருவாக்கப்பட்ட ஜாவாஸ்கிரிப்ட் கோப்புகளுக்கான வெளியீட்டு டைரக்டரியைக் குறிப்பிடுகிறது. இந்த விருப்பம் மூலக் குறியீட்டை தொகுக்கப்பட்ட குறியீட்டிலிருந்து பிரிப்பதன் மூலம் திட்டத்தின் பில்ட் வெளியீட்டை ஒழுங்கமைக்க உதவுகிறது. ஒரு outDir
ஐப் பயன்படுத்துவது பில்ட் செயல்முறையை நிர்வகிப்பதையும் பயன்பாட்டைப் பயன்படுத்துவதையும் எளிதாக்குகிறது.
உதாரணம்:
{
"compilerOptions": {
"outDir": "dist"
}
}
rootDir
rootDir
விருப்பம் டைப்ஸ்கிரிப்ட் திட்டத்தின் ரூட் டைரக்டரியைக் குறிப்பிடுகிறது. கம்பைலர் இந்த டைரக்டரியை மாட்யூல் பெயர்களைத் தீர்ப்பதற்கான அடிப்படையாகப் பயன்படுத்துகிறது. ஒரு சிக்கலான டைரக்டரி அமைப்பு கொண்ட திட்டங்களுக்கு இந்த விருப்பம் குறிப்பாக முக்கியமானது. rootDir
ஐ சரியாக அமைப்பது, கம்பைலர் தேவையான அனைத்து மாட்யூல்களையும் சார்புகளையும் கண்டுபிடிக்க முடியும் என்பதை உறுதி செய்கிறது.
உதாரணம்:
{
"compilerOptions": {
"rootDir": "src"
}
}
strict
strict
விருப்பம் அனைத்து கடுமையான டைப்-சரிபார்ப்பு விருப்பங்களையும் செயல்படுத்துகிறது. இது புதிய டைப்ஸ்கிரிப்ட் திட்டங்களுக்கு மிகவும் பரிந்துரைக்கப்படுகிறது, ஏனெனில் இது மேம்பாட்டு செயல்முறையின் ஆரம்பத்தில் சாத்தியமான பிழைகளைக் கண்டறிய உதவுகிறது. கடுமையான பயன்முறையை இயக்குவது கடுமையான டைப் சரிபார்ப்பு விதிகளை அமல்படுத்துகிறது, இது மேலும் வலுவான மற்றும் பராமரிக்கக்கூடிய குறியீட்டிற்கு வழிவகுக்கிறது. அனைத்து புதிய டைப்ஸ்கிரிப்ட் திட்டங்களிலும் கடுமையான பயன்முறையை இயக்குவது ஒரு சிறந்த நடைமுறையாகும்.
உதாரணம்:
{
"compilerOptions": {
"strict": true
}
}
esModuleInterop
esModuleInterop
விருப்பம் CommonJS மற்றும் ES மாட்யூல்களுக்கு இடையிலான இயங்குதன்மையை செயல்படுத்துகிறது. இரண்டு வகையான மாட்யூல்களையும் பயன்படுத்தும் திட்டங்களுக்கு இது முக்கியமானது. esModuleInterop
இயக்கப்பட்டால், டைப்ஸ்கிரிப்ட் தானாகவே CommonJS மற்றும் ES மாட்யூல்களுக்கு இடையிலான வேறுபாடுகளைக் கையாளும், இது இரண்டு அமைப்புகளுக்கு இடையில் மாட்யூல்களை இறக்குமதி செய்வதையும் ஏற்றுமதி செய்வதையும் எளிதாக்குகிறது. வெவ்வேறு மாட்யூல் அமைப்புகளைப் பயன்படுத்தக்கூடிய மூன்றாம் தரப்பு லைப்ரரிகளுடன் பணிபுரியும் போது இந்த விருப்பம் குறிப்பாக பயனுள்ளதாக இருக்கும்.
உதாரணம்:
{
"compilerOptions": {
"esModuleInterop": true
}
}
moduleResolution
moduleResolution
விருப்பம் டைப்ஸ்கிரிப்ட் மாட்யூல் இறக்குமதிகளை எவ்வாறு தீர்க்கிறது என்பதைக் குறிப்பிடுகிறது. பொதுவான மதிப்புகளில் Node
மற்றும் Classic
ஆகியவை அடங்கும். Node
மாட்யூல் ரெசல்யூஷன் உத்தி இயல்புநிலையாகும் மற்றும் Node.js மாட்யூல் ரெசல்யூஷன் அல்காரிதத்தை அடிப்படையாகக் கொண்டது. Classic
மாட்யூல் ரெசல்யூஷன் உத்தி பழமையானது மற்றும் குறைவாகவே பயன்படுத்தப்படுகிறது. Node
மாட்யூல் ரெசல்யூஷன் உத்தியைப் பயன்படுத்துவது, டைப்ஸ்கிரிப்ட் ஒரு Node.js சூழலில் மாட்யூல் இறக்குமதிகளைச் சரியாகத் தீர்க்க முடியும் என்பதை உறுதி செய்கிறது.
உதாரணம்:
{
"compilerOptions": {
"moduleResolution": "Node"
}
}
baseUrl
மற்றும் paths
baseUrl
மற்றும் paths
விருப்பங்கள் சார்பற்ற மாட்யூல் இறக்குமதிகளுக்கான மாட்யூல் ரெசல்யூஷனை உள்ளமைக்கப் பயன்படுகின்றன. baseUrl
விருப்பம் சார்பற்ற மாட்யூல் பெயர்களைத் தீர்ப்பதற்கான அடிப்படை டைரக்டரியைக் குறிப்பிடுகிறது. paths
விருப்பம் கோப்பு முறைமையில் குறிப்பிட்ட இடங்களுக்கு மாட்யூல் பெயர்களை மேப் செய்ய உங்களை அனுமதிக்கிறது. ஒரு சிக்கலான டைரக்டரி அமைப்பு கொண்ட திட்டங்களுக்கும் மாட்யூல் இறக்குமதிகளை எளிதாக்குவதற்கும் இந்த விருப்பங்கள் குறிப்பாக பயனுள்ளதாக இருக்கும். baseUrl
மற்றும் paths
ஐப் பயன்படுத்துவது குறியீட்டை மேலும் படிக்கக்கூடியதாகவும் பராமரிக்கக்கூடியதாகவும் மாற்றும்.
உதாரணம்:
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@components/*": ["src/components/*"],
"@utils/*": ["src/utils/*"]
}
}
}
Include மற்றும் Exclude விருப்பங்கள்
include
மற்றும் exclude
விருப்பங்கள் எந்தக் கோப்புகள் தொகுப்பில் சேர்க்கப்பட வேண்டும் மற்றும் எந்தக் கோப்புகள் விலக்கப்பட வேண்டும் என்பதைக் குறிப்பிடுகின்றன. இந்த விருப்பங்கள் கோப்புப் பெயர்களைப் பொருத்த குளோப் பேட்டர்ன்களைப் பயன்படுத்துகின்றன. include
மற்றும் exclude
ஐப் பயன்படுத்துவது, டைப்ஸ்கிரிப்ட் கம்பைலரால் எந்தக் கோப்புகள் செயலாக்கப்படுகின்றன என்பதைக் கட்டுப்படுத்த உங்களை அனுமதிக்கிறது, இது பில்ட் செயல்திறனை மேம்படுத்துகிறது மற்றும் பிழைகளைக் குறைக்கிறது. தொகுப்பில் சேர்க்கப்பட வேண்டிய கோப்புகளை வெளிப்படையாகக் குறிப்பிடுவது ஒரு சிறந்த நடைமுறையாகும்.
உதாரணம்:
{
"include": ["src/**/*"],
"exclude": ["node_modules", "dist"]
}
Extends விருப்பம்
extends
விருப்பம் மற்றொரு tsconfig.json
கோப்பிலிருந்து கம்பைலர் விருப்பங்களைப் பெற உங்களை அனுமதிக்கிறது. பல திட்டங்களுக்கு இடையில் பொதுவான கட்டமைப்பு அமைப்புகளைப் பகிர்ந்து கொள்வதற்கோ அல்லது அடிப்படை கட்டமைப்புகளை உருவாக்குவதற்கோ இது பயனுள்ளதாக இருக்கும். extends
விருப்பத்தைப் பயன்படுத்துவது குறியீடு மறுபயன்பாட்டை ஊக்குவிக்கிறது மற்றும் நகலெடுப்பைக் குறைக்கிறது. அடிப்படை கட்டமைப்புகளை உருவாக்கி அவற்றை தனிப்பட்ட திட்டங்களில் விரிவுபடுத்துவது ஒரு சிறந்த நடைமுறையாகும்.
உதாரணம்:
{
"extends": "./tsconfig.base.json",
"compilerOptions": {
"jsx": "react-jsx"
},
"include": ["src/**/*"]
}
மேம்பட்ட கட்டமைப்புகள்
அத்தியாவசிய கம்பைலர் விருப்பங்களைத் தவிர, tsconfig.json
சிறப்பு சூழ்நிலைகளுக்கான மேம்பட்ட கட்டமைப்புகளை ஆதரிக்கிறது.
படிப்படியான தொகுப்பு (Incremental Compilation)
பெரிய திட்டங்களுக்கு, படிப்படியான தொகுப்பு பில்ட் நேரங்களை கணிசமாக மேம்படுத்தும். டைப்ஸ்கிரிப்ட் முந்தைய தொகுப்புகளின் முடிவுகளை கேச் செய்து, மாற்றப்பட்ட கோப்புகளை மட்டுமே மீண்டும் தொகுக்கும். படிப்படியான தொகுப்பை இயக்குவது பெரிய திட்டங்களுக்கான பில்ட் நேரங்களைக் கணிசமாகக் குறைக்கும். அதிக எண்ணிக்கையிலான கோப்புகள் மற்றும் சார்புகள் கொண்ட திட்டங்களுக்கு இது குறிப்பாக முக்கியமானது.
{
"compilerOptions": {
"incremental": true,
"tsBuildInfoFile": ".tsbuildinfo"
}
}
திட்டக் குறிப்புகள் (Project References)
திட்டக் குறிப்புகள் பெரிய டைப்ஸ்கிரிப்ட் திட்டங்களை சிறிய, சுதந்திரமான மாட்யூல்களாக கட்டமைக்க உங்களை அனுமதிக்கின்றன. இது பில்ட் நேரங்களையும் குறியீடு அமைப்பையும் மேம்படுத்தும். திட்டக் குறிப்புகளைப் பயன்படுத்துவது பெரிய திட்டங்களை மேலும் நிர்வகிக்கக்கூடியதாகவும் பராமரிக்க எளிதாகவும் மாற்றும். பெரிய, சிக்கலான திட்டங்களுக்கு திட்டக் குறிப்புகளைப் பயன்படுத்துவது ஒரு சிறந்த நடைமுறையாகும்.
{
"compilerOptions": {
"composite": true
},
"references": [
{ "path": "./module1" },
{ "path": "./module2" }
]
}
தனிப்பயன் டைப் டெபினிஷன்கள்
சில நேரங்களில், டைப் டெபினிஷன்கள் இல்லாத ஜாவாஸ்கிரிப்ட் லைப்ரரிகளுக்கு நீங்கள் டைப் டெபினிஷன்களை வழங்க வேண்டியிருக்கும். இந்த லைப்ரரிகளுக்கான டைப்களை வரையறுக்க நீங்கள் தனிப்பயன் .d.ts
கோப்புகளை உருவாக்கலாம். தனிப்பயன் டைப் டெபினிஷன்களை உருவாக்குவது, டைப் பாதுகாப்பை தியாகம் செய்யாமல் உங்கள் டைப்ஸ்கிரிப்ட் குறியீட்டில் ஜாவாஸ்கிரிப்ட் லைப்ரரிகளைப் பயன்படுத்த உங்களை அனுமதிக்கிறது. இது மரபு ஜாவாஸ்கிரிப்ட் குறியீடு அல்லது சொந்த டைப் டெபினிஷன்களை வழங்காத லைப்ரரிகளுடன் பணிபுரியும் போது குறிப்பாக பயனுள்ளதாக இருக்கும்.
// custom.d.ts
declare module 'my-library' {
export function doSomething(x: number): string;
}
சிறந்த நடைமுறைகள்
- கடுமையான பயன்முறையைப் பயன்படுத்தவும்: மேம்பட்ட டைப் சரிபார்ப்புக்கு
strict
விருப்பத்தை இயக்கவும். - இலக்கைக் குறிப்பிடவும்: உங்கள் இயக்க சூழலுக்கான பொருத்தமான
target
பதிப்பைத் தேர்ந்தெடுக்கவும். - வெளியீட்டை ஒழுங்கமைக்கவும்: மூலக் குறியீட்டை தொகுக்கப்பட்ட குறியீட்டிலிருந்து பிரிக்க
outDir
ஐப் பயன்படுத்தவும். - சார்புகளை நிர்வகிக்கவும்: எந்தக் கோப்புகள் தொகுக்கப்படுகின்றன என்பதைக் கட்டுப்படுத்த
include
மற்றும்exclude
ஐப் பயன்படுத்தவும். - Extends ஐப் பயன்படுத்தவும்:
extends
விருப்பத்துடன் பொதுவான கட்டமைப்பு அமைப்புகளைப் பகிரவும். - பதிப்புக் கட்டுப்பாட்டில் உள்ளமைவைச் சரிபார்க்கவும்: டெவலப்பர் சூழல்கள் மற்றும் CI/CD பைப்லைன்களில் நிலைத்தன்மையைப் பேண `tsconfig.json` ஐ git-ல் கமிட் செய்யவும்.
பொதுவான சிக்கல்களைத் தீர்ப்பது
tsconfig.json
ஐ உள்ளமைப்பது சில நேரங்களில் சவாலாக இருக்கலாம். இங்கே சில பொதுவான சிக்கல்கள் மற்றும் அவற்றின் தீர்வுகள்:
மாட்யூல் ரெசல்யூஷன் சிக்கல்கள்
நீங்கள் மாட்யூல் ரெசல்யூஷன் பிழைகளை எதிர்கொண்டால், moduleResolution
விருப்பம் சரியாக உள்ளமைக்கப்பட்டுள்ளதா என்பதையும், baseUrl
மற்றும் paths
விருப்பங்கள் சரியாக அமைக்கப்பட்டுள்ளதா என்பதையும் உறுதிப்படுத்தவும். paths
விருப்பத்தில் குறிப்பிடப்பட்டுள்ள பாதைகள் சரியானவை என்பதை இருமுறை சரிபார்க்கவும். தேவையான அனைத்து மாட்யூல்களும் node_modules
டைரக்டரியில் நிறுவப்பட்டுள்ளதா என்பதை சரிபார்க்கவும்.
டைப் பிழைகள்
டைப் டெபினிஷன்கள் தவறாகவோ அல்லது விடுபட்டிருந்தாலோ டைப் பிழைகள் ஏற்படலாம். நீங்கள் பயன்படுத்தும் அனைத்து லைப்ரரிகளுக்கும் சரியான டைப் டெபினிஷன்கள் நிறுவப்பட்டுள்ளதா என்பதை உறுதிப்படுத்தவும். டைப் டெபினிஷன்கள் இல்லாத ஒரு ஜாவாஸ்கிரிப்ட் லைப்ரரியை நீங்கள் பயன்படுத்தினால், தனிப்பயன் டைப் டெபினிஷன்களை உருவாக்குவதைக் கவனியுங்கள்.
தொகுப்புப் பிழைகள்
உங்கள் டைப்ஸ்கிரிப்ட் குறியீட்டில் சிண்டாக்ஸ் பிழைகள் அல்லது டைப் பிழைகள் இருந்தால் தொகுப்புப் பிழைகள் ஏற்படலாம். பிழைச் செய்திகளை கவனமாக மதிப்பாய்வு செய்து, ஏதேனும் சிண்டாக்ஸ் பிழைகள் அல்லது டைப் பிழைகளை சரிசெய்யவும். உங்கள் குறியீடு டைப்ஸ்கிரிப்ட் கோடிங் மரபுகளைப் பின்பற்றுகிறது என்பதை உறுதிப்படுத்தவும்.
முடிவுரை
ஒரு வெற்றிகரமான டைப்ஸ்கிரிப்ட் திட்டத்திற்கு நன்கு கட்டமைக்கப்பட்ட tsconfig.json
கோப்பு அவசியம். அத்தியாவசிய கம்பைலர் விருப்பங்கள் மற்றும் மேம்பட்ட கட்டமைப்புகளைப் புரிந்துகொள்வதன் மூலம், உங்கள் மேம்பாட்டுப் பணிப்பாய்வுகளை மேம்படுத்தலாம், குறியீட்டின் தரத்தை மேம்படுத்தலாம் மற்றும் இலக்கு சூழலுடன் இணக்கத்தன்மையை உறுதிப்படுத்தலாம். tsconfig.json
ஐ சரியாக உள்ளமைப்பதில் நேரத்தைச் செலவிடுவது, பிழைகளைக் குறைப்பதன் மூலமும், பராமரிப்பை மேம்படுத்துவதன் மூலமும், பில்ட் செயல்முறையை நெறிப்படுத்துவதன் மூலமும் நீண்ட காலத்திற்குப் பயனளிக்கும். இது மேலும் திறமையான மற்றும் நம்பகமான மென்பொருள் மேம்பாட்டிற்கு வழிவகுக்கிறது. இங்கு வழங்கப்பட்ட தகவல்கள் உலகளவில் பொருந்தக்கூடியதாக வடிவமைக்கப்பட்டுள்ளன, மேலும் டைப்ஸ்கிரிப்டுடன் ஒரு புதிய திட்டத்தைத் தொடங்க ஒரு திடமான அடித்தளத்தை வழங்க வேண்டும்.
கிடைக்கக்கூடிய அனைத்து கம்பைலர் விருப்பங்களின் மிகச் சமீபத்திய தகவல்களுக்கும் விரிவான விளக்கங்களுக்கும் அதிகாரப்பூர்வ டைப்ஸ்கிரிப்ட் ஆவணங்களை அணுகுவதை நினைவில் கொள்ளுங்கள். டைப்ஸ்கிரிப்ட் உள்ளமைவின் நுணுக்கங்களைப் புரிந்துகொள்வதற்கு டைப்ஸ்கிரிப்ட் ஆவணங்கள் ஒரு மதிப்புமிக்க ஆதாரமாகும்.