SkillByAIइंटरैक्टिव संस्करण खोलें →

पाठ 17 / 31

Polyfills और Core-js

समझें कि केवल syntax transpilation पर्याप्त क्यों नहीं है और core-js polyfills जरूरत पर गायब runtime features कैसे जोड़ते हैं।

Polyfill बनाम transpile distinction

Transpilation syntax को convert करता है। Polyfills लापता functions को जोड़ते हैं: Promise, Array.prototype.includes(), Object.assign(), आदि। Legacy browser support के लिए दोनों की जरूरत है।

Core-js: मानक polyfill library

core-js सबसे complete polyfill library है। Babel केवल उन polyfills को inject कर सकता है जो आपके कोड को actually चाहिए useBuiltIns के साथ @babel/preset-env के through।

Polyfill injection को कॉन्फ़िगर करना

स्वचालित रूप से केवल आवश्यक polyfills को inject करने के लिए useBuiltIns: 'usage' का उपयोग करें। Core-js को पूरी तरह शामिल करने की तुलना में bundle size को कम करता है।

{
  "presets": [
    [
      "@babel/preset-env",
      {
        "useBuiltIns": "usage",
        "corejs": "3.32"
      }
    ]
  ]
}