繁体   English   中英

如何在没有 Webpack 的情况下使用 Babel?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM