@babel/plugin-syntax-dynamic-import

2023-06-08 16:23 更新
NOTE: This plugin is included in @babel/preset-env, in ES2020.

提示

You can safely remove this plugin from your Babel config if using @babel/core 7.8.0 or above.

Installation

  • npm
  • Yarn
  • pnpm
pnpm add --save-dev @babel/plugin-syntax-dynamic-import

Usage

With a configuration file (Recommended)

babel.config.json

{
"plugins": ["@babel/plugin-syntax-dynamic-import"]
}

Via CLI

Shell

babel --plugins @babel/plugin-syntax-dynamic-import script.js

Via Node API

JavaScript

require("@babel/core").transformSync("code", {
plugins: ["@babel/plugin-syntax-dynamic-import"],
});

Working with Webpack and @babel/preset-env

Currently, @babel/preset-env is unaware that using import() with Webpack relies on Promise internally. Environments which do not have builtin support for Promise, like Internet Explorer, will require both the promise and iterator polyfills be added manually.

For example, with core-js@3:

webpack.config.js

const config = {
entry: [
"core-js/modules/es.promise",
"core-js/modules/es.array.iterator",
path.resolve(__dirname, "src/main.js"),
],
// ...
};

or

src/main.js

import "core-js/modules/es.promise";
import "core-js/modules/es.array.iterator";

// ...

This is the same for core-js@2, except the imports paths are slightly different:

webpack.config.js

const config = {
entry: [
"core-js/modules/es6.promise",
"core-js/modules/es6.array.iterator",
path.resolve(__dirname, "src/main.js"),
],
// ...
};

or

src/main.js

import "core-js/modules/es6.promise";
import "core-js/modules/es6.array.iterator";

// ...


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号