javascript - Varför behöver en polyfylld komponent polyfyllas igen i det importerade projektet?
Jag har en React-komponent som jag har skapat som ett bibliotek. Jag har kört byggprocessen för det med webpack och babeljs. I babel.config.js för Babel för detta komponentbibliotek hade jag följande för att polyfilla funktioner som kanske inte finns i äldre webbläsare:
"presets": [
"@babel/preset-typescript",
"@babel/preset-react",
[
"@babel/preset-env",
{
"targets": {
"node": "current"
},
"useBuiltIns": "usage",
"corejs": {
"version": "3.17",
"proposals": true
}
}
]
],
Men när jag importerar detta komponentbibliotek till min huvudsakliga React-app, klagar webbläsarna på att några JS-funktioner är "inte en funktion" när de körs.
Det jag till slut var tvungen att göra var att ha exakt samma inställning i babel.config.js i min huvud-React-app också för att det skulle fungera, vilket jag inte kunde förstå.
Har inte komponentbiblioteket redan polyfillats när det byggdes från sitt eget arkiv eftersom jag hade de där Babel-konfigurationerna?
Varför fungerar det inte när jag importerar det till min huvud-React-app utan de där Babel-konfigurationerna i huvud-React-appen? Varför måste jag ha samma inställningar igen i min huvud-React-app för att polyfilla igen för att det ska fungera?