跳至主要內容

@babel/runtime

@babel/runtime 是包含 Babel 模組化執行時期輔助函式的函式庫。

安裝

npm install --save @babel/runtime

另請參閱:@babel/runtime-corejs2

用法

此套件旨在與 Babel 外掛 @babel/plugin-transform-runtime 搭配使用,作為執行時期的相依性。請參閱該套件中的說明文件以了解用法。

原因

有時 Babel 可能在輸出中注入一些在各個檔案中都相同的程式碼,因此可以重複使用。

例如,使用類別轉換(不使用寬鬆模式)

JavaScript
class Circle {}

轉換為

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

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

這表示每個包含類別的檔案都會重複出現 _classCallCheck 函式。

使用 @babel/plugin-transform-runtime,它會將對函式的參照替換為 @babel/runtime 版本。

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

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

@babel/runtime 只是包含函式實作的套件,採用模組化方式。