站长资讯网
最全最丰富的资讯网站

webpack支持es6吗

webpack支持es6。webpack 2支持原生的ES6模块语法,意味着开发者无须额外引入babel这样的工具,就可以使用import和export。但如果使用其他的ES6+特性,仍然需要引入babel工具。

webpack支持es6吗

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

模块方法


在 webpack 打包应用程序时,你可以选择各种模块语法风格,包括 ES6,CommonJS 和 AMD。

尽管 webpack 支持多种模块语法,但我们还是建议尽量使用一致的语法,以此避免一些奇怪的行为和 bug。事实上,当距离最近的 package.json 文件中包含值为 "module" 或 "commonjs" 的 "type" 字段时,webpack 会启用语法一致性检查。请大家在阅读前,注意此情况:

  • 在 package.json 中为 .mjs 或 .js 设置 "type": "module"

    • 不允许使用 CommonJS,例如,你不能使用 require,module.exports 或 exports

    • 当引入文件时,强制编写扩展名,例如,你应使用 import './src/App.mjs',而非 import './src/App'(你可以通过设置 Rule.resolve.fullySpecified 来禁用此规则)

  • 在 package.json 中为 .cjs 或 .js 设置 "type": "commonjs"

    • import 和 export 均不可用

  • 在 package.json 中为 .wasm 设置 "type": "module"

    • 引入 wasm 文件时,必须编写文件扩展名

ES6 (推荐)


webpack 2 支持原生的 ES6 模块语法,意味着你无须额外引入 babel 这样的工具,就可以使用 import 和 export。但是注意,如果使用其他的 ES6+ 特性,仍然需要引入 babel。webpack 支持以下的方法:

import

通过 import 以静态的方式导入另一个通过 export 导出的模块。

import MyModule from './my-module.js'; import { NamedExport } from './other-module.js';
登录后复制

Warning:

这里的关键词是静态的。标准的 import 语句中,模块语句中不能以「具有逻辑或含有变量」的动态方式去引入其他模块。关于 import 的

赞(0)
分享到: 更多 (0)