Saltar al contenido principal

@babel/runtime-corejs2

Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

@babel/runtime-corejs2 es una biblioteca que contiene los ayudantes modulares de tiempo de ejecución de Babel junto con la versión 2 de core-js.

Instalación

npm install --save @babel/runtime-corejs2

Ver también: @babel/runtime.

Uso

Está diseñado para usarse como una dependency de tiempo de ejecución junto con el complemento de Babel @babel/plugin-transform-runtime. Consulta la documentación de ese paquete para conocer su uso.

Por qué

A veces Babel puede inyectar código idéntico en la salida, el cual podría reutilizarse.

Por ejemplo, con la transformación de clases (sin modo loose):

JavaScript
class A {}

se convierte en:

JavaScript
function _classCallCheck(instance, Constructor) {
//...
}

var Circle = function Circle() {
_classCallCheck(this, Circle);
};

esto significa que cada archivo que contenga una clase tendría repetida la función _classCallCheck.

Con @babel/plugin-transform-runtime, se reemplazaría la referencia a la función por la versión de @babel/runtime-corejs2.

JavaScript
var _classCallCheck = require("@babel/runtime-corejs2/helpers/classCallCheck");

var Circle = function Circle() {
_classCallCheck(this, Circle);
};

@babel/runtime-corejs2 es simplemente el paquete que contiene las implementaciones de las funciones de forma modular.

Diferencias con @babel/runtime

Puede usarse como alternativa a un polyfill para métodos que no son de instancia. Reemplaza elementos como Promise o Symbol con funciones de la biblioteca core-js.

JavaScript
Promise;

se convierte en:

JavaScript
var _Promise = require("@babel/runtime-corejs2/core-js/promise.js");

Esta transformación también se aplica a los ayudantes de Babel.