[英]How to use Babel without Webpack?
我使用 babel 编译了如下所示的简单代码。
var aa = new Promise();
至
"use strict";
require("core-js/modules/es.object.to-string");
require("core-js/modules/es.promise");
var aa = new Promise();
但是,像 IE9 这样的旧浏览器无法执行该代码。 因为浏览器无法解析路径core-js/modules/es.object.to-string 。
我必须使用 webpack 来使用 polyfill 吗?
我不想使用 webpack。
我在 package.json 中的 babel 设置如下。
"babel": {
"presets": [
[
"@babel/preset-env",
{
"corejs": 3,
"useBuiltIns": "usage",
"targets": ">0.2%, not dead, not ie <= 11, not op_mini all"
}
],
"@babel/preset-react"
]
}
您可以在索引 html 文件中使用<script>
标签包含您的 polyfill 脚本,并正确排序您的 polyfill 和应用程序脚本。 require
不是浏览器识别的命令。 它是来自 node.js 的服务器端实现。
您可能会考虑使用import
代替?
import 'core-js';
或此处显示的特定模块https://github.com/zloirock/core-js
import 'core-js/features/promise';
-> 将修改全局命名空间
import Promise from 'core-js-pure/features/promise';
-> 不会修改全局命名空间
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.