முக்கிய உள்ளடக்கத்திற்குச் செல்லவும்
தொகுதி 7 · பாடம் 1 இன் 2பாடத்திட்டத்தில் 13/14~12 min
தொகுதி பாடங்கள் (1/2)

tsconfig.json உடன் உள்ளமைவு

tsconfig.json கோப்பு டைப்ஸ்கிரிப்ட் திட்டத்தின் ரூட் கோப்பகத்தையும் திட்டத்தை உருவாக்க தேவையான கம்பைலர் விருப்பங்களையும் குறிப்பிடுகிறது.

நீங்கள் tsc ஐ ப்ராஜெக்ட் டைரக்டரியில் இயக்கும் போதெல்லாம், கம்பைலர் இந்தக் கோப்பை அதன் தொகுத்தல் நடத்தைக்கு வழிகாட்டும்.


tsconfig.json கோப்பின் அமைப்பு

ஒரு பொதுவான கட்டமைப்பு கோப்பு இதுபோல் தெரிகிறது:

Code
{
  "compilerOptions": {
    "target": "es2022",
    "module": "commonjs",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true,
    "outDir": "./dist"
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules", "**/*.spec.ts"]
}

முக்கிய பண்புகள்:

  • compilerOptions: கம்பைலருக்கான அமைப்புகள்.
  • include: தொகுக்க வேண்டிய கோப்புகள் அல்லது கோப்புறைகளைக் குறிப்பிடுகிறது.
  • exclude: தொகுக்கும் போது புறக்கணிக்க வேண்டிய கோப்புகள் அல்லது கோப்புறைகளைக் குறிப்பிடுகிறது.

முக்கிய கம்பைலர் விருப்பங்கள்

தெரிந்து கொள்ள வேண்டிய சில முக்கியமான அமைப்புகள் இங்கே:

  1. target: கம்பைலரின் JavaScript வெளியீட்டின் பதிப்பைக் குறிப்பிடுகிறது (எ.கா., es5, es6/es2015, es2020, __AGYTOK_INLINE_INLINE).
  2. module: தொகுக்கப்பட்ட குறியீட்டில் பயன்படுத்தப்படும் தொகுதி அமைப்பைக் குறிப்பிடுகிறது (எ.கா., commonjs, esnext, node16).
  3. strict: கடுமையான வகைச் சரிபார்ப்பு நடத்தைகளின் பரந்த தொகுப்பை செயல்படுத்துகிறது. அதிகபட்ச வகை பாதுகாப்புக்காக, இதை true என அமைக்க பரிந்துரைக்கப்படுகிறது. இது போன்ற விருப்பங்களை செயல்படுத்துகிறது:
    • noImplicitAny: எந்த வகை சிறுகுறிப்பும் வழங்கப்படாதபோது, மறைமுகமான any வகையுடன் வெளிப்பாடுகள் மற்றும் அறிவிப்புகளில் பிழையை எழுப்புகிறது.
    • strictNullChecks: null அல்லது undefined ஐ அவர்களின் தொழிற்சங்கத்தில் வெளிப்படையாகச் சேர்க்காத வகைகளுக்கு ஒதுக்குவதைத் தடுக்கிறது.

நீங்களே முயற்சி செய்து பாருங்கள்

பயிற்சி 1: கண்டிப்பான நுல் சோதனைகளைக் கையாளுதல்

உடற்பயிற்சி#ts.m7.l1.e1
முயற்சிகள்: 0ஏற்றுகிறது…

tsconfig.json இல் உள்ள strictNullChecks: true விருப்பத்தின் கீழ், நாம் பழமையான வகைகளுக்கு பூஜ்ய அல்லது வரையறுக்கப்படாததை ஒதுக்க முடியாது. சரம் வகையின் உள்ளீட்டை ஏற்கும் parseAge என்ற செயல்பாட்டை அறிவிக்கவும் null மற்றும் உள்ளீடு பூஜ்யமாக இல்லை மற்றும் சரியான முழு எண்ணாக இருந்தால் எண்ணை வழங்கும், இல்லையெனில் அது 0 ஐ வழங்கும். கண்டிப்பான தொகுப்பை அனுப்ப பூஜ்ய வழக்கை வெளிப்படையாகக் கையாளவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

செயல்பாட்டின் தொடக்கத்தில் உள்ளீடு பூஜ்யமாக உள்ளதா என்பதைச் சரிபார்த்து, சரத்தை செயலாக்குவதற்கு முன் உடனடியாக 0 ஐத் திருப்பி விடுங்கள்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

பயிற்சி 2: மறைமுகமான எதுவும் இல்லாமல் கடுமையான தட்டச்சு

உடற்பயிற்சி#ts.m7.l1.e2
முயற்சிகள்: 0ஏற்றுகிறது…

NoImplicitAny: true என்பதன் கீழ், எந்த அளவுருவின் வகையை ஊகிக்க முடியாது என்பது வெளிப்படையாக தட்டச்சு செய்யப்பட வேண்டும். ஒரு வரிசை உருப்படிகளை (எண்களின் வரிசை) ஏற்கும் processItems என்ற செயல்பாட்டை உருவாக்கவும் மற்றும் ஒரு எண்ணை ஒரு வாதமாக எடுத்துக்கொண்டு, எதையும் திரும்பப் பெறாத ஒரு கால்பேக் செயல்பாட்டை உருவாக்கவும். எதையும் பயன்படுத்த வேண்டாம் என்பதை உறுதிசெய்து, எல்லாவற்றையும் வெளிப்படையாக தட்டச்சு செய்யவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

கையொப்பத்துடன் செயல்பாட்டை அறிவிக்கவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்