पाठ 13 / 30
आधुनिक बनाम Legacy Browsers को Target करना
Browser support आवश्यकताओं के आधार पर transpilation को समायोजित करें।
आधुनिक targets: कम transpilation
यदि केवल आधुनिक browsers को support कर रहे हैं (Chrome 90+, Firefox 88+), Babel अधिकांश transpilation को छोड़ देता है। आधुनिक JavaScript विशेषताएं natively काम करती हैं, bundle size को कम करती हैं।
Browserslist उदाहरण
Targets को परिभाषित करने के लिए browserslist syntax का उपयोग करें। Preset-env इसे पढ़ता है और accordingly transpile करता है।
// Modern SPA: less transpilation
{
"targets": {
"browsers": ["last 2 Chrome versions", "last 2 Firefox versions"]
}
}
// Legacy support: more transpilation
{
"targets": {
"browsers": ["IE 11", "iOS >= 9"]
}
}Bundle impact को measure करें
IE11 के लिए transpile करने से bundle size में 20-30% जुड़ता है। आधुनिक targets के लिए, आप अक्सर transpilation को पूरी तरह skip करते हैं, kilobytes बचाते हैं।