问题标签 [babel-preset-env]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
180 浏览

babeljs - babel-preset-env 运行时版本检查

babel-preset-env允许自动确定所需的 polyfill 和转换,但它如何在运行时检查编译时指定的目标版本是否真的可用。

假设我使用 Safari 10

但代码是在旧版本的 safari 上运行的。

babel-preset-env 是如何识别这一点的,或者处理这个常见问题的典型方法是什么?

0 投票
0 回答
559 浏览

javascript - 如果我使用 babel-polyfill,我还需要使用 babel-preset-env 和 Babel 插件吗?

我的理解是 Babel Polyfill 模拟完整的 ES6 环境,而babel-preset-env根据您需要支持的环境(浏览器)自动将 ES6(及更高版本)编译为 ES5。

我对此有几个问题:

  • 这两种设计是为了相互配合使用还是相互替代?

  • 如果它们被设计为彼此的替代品,是否有理由选择一个而不是另一个?还有一个性能更好吗?

  • 当使用这些工具中的任何一个时,是否仍然需要使用额外的 Babel 插件,或者其中一个是否包含我需要编写符合规范的现代 JavaScript 的每个插件(仅第 4 阶段提案,我想插件需要第三阶段及以下?)。

0 投票
0 回答
412 浏览

babeljs - babel-preset-env 如何处理 polyfill 加载

由于性能总是很重要,我想知道如何最好地包含 polyfill。如果当前环境不支持它,我更喜欢使用代码拆分,然后延迟加载每个 polyfill。

手动执行此操作需要更多工作,我很乐意投入其中。我猜在这种情况下,eslint-plugin-compat 将是一个很好的帮手。

用 sth 自动化这个过程。像 babel-preset-env 这样可以减少工作量,但它会带来与“手动”相同的性能优势吗?

根据我的理解,babel-preset-env 正在转换所有这些东西,但是当你使用useBuiltIns它时会添加相应的 polyfill,对吧?-> https://babeljs.io/docs/plugins/preset-env/#usebuiltins

但话又说回来,它是否总是加载所有 polyfill(文件/模块)并在其中检查是否需要 polyfill,或者如果 fn 在窗口或原型上不可用,它是否有条件地加载 polyfill 模块?

如果您能指出我的方向或解释 babel-preset-env 的工作方式,那就太好了。

非常感谢您的帮助:)

0 投票
0 回答
62 浏览

visual-studio-code - Babel 导入/导出依赖冲突

我正在尝试使用 javascript ES7 来设置我的基本 graphql 服务器。当我从终端执行 npm run 时,我的应用程序崩溃了。我相信我安装了太多的 babel 包,导致依赖矛盾。babel-preset-env 是否涵盖了我需要的 babel 的所有内容?为什么 babel-preset-stage-0 与 env 冲突?

0 投票
2 回答
34206 浏览

reactjs - Babel Preset 在 IE11 上不为 Object.assign 提供支持 - “对象不支持属性或方法‘assign’”

我正在为我的反应应用程序使用babel-preset-env 版本 - 1.6.1,我在 IE 上收到错误:-对象不支持属性或方法“分配” 在此处输入图像描述

这是我的.babelrc :-

}

我尝试了这些填充物:-

https://babeljs.io/docs/plugins/transform-object-assign/ https://www.npmjs.com/package/babel-plugin-object-assign

但它没有用

我正在使用语法:-

在我的项目中无处不在

我需要一个适用于我的项目的 polyfill。

0 投票
1 回答
392 浏览

reactjs - undefined is not an object (evaluating 'regeneratorRuntime.mark')

I'm having a trouble with this error for quite a while. I only did some renaming and copy and paste of some folders from my previous app to this app. The app bundles to 100%. but after that instead of opening my app it pops up this error message. If someone could help it would be amazing.enter image description here

this is my package.json

},

0 投票
1 回答
432 浏览

babeljs - babel-preset-env 是否像 babel-polyfill 那样污染全局范围?

我需要在我的代码中使用ES6代码和Object.entries。在查看 babel 后,我看到他们建议使用babel-preset-env. 但我正在 webdriverIO 中编写步骤定义,他们建议使用babel-plugin-transform-runtime它,以免污染全局范围。让我知道我是否可以使用 babel-preset-env 并且仍然不会污染全局范围。

0 投票
1 回答
500 浏览

javascript - 添加 babel-preset-env 和 babel-preset-stage-2 时生成器运行时错误

我必须使用 babel-preset-env 和 babel-preset-stage-2 才能将 webpack 用于包含扩展运算符的代码。之后,我成功地使用 webpack 构建了我的包,但是这次我在运行时遇到了生成器运行时错误。

所以首先我尝试在这个页面中做解决方案,babel-polyfill,但我的团队不希望我使用它,而是他们要求我使用 transform-runtime 插件,所以我安装了它并将它放在 babelrc 文件中但仍然得到相同生成器运行时错误,对此有任何想法吗?我应该多做些什么?

这是 babelrc 文件

webpack 配置文件

package.json 中的 babel 和 webpack 版本

0 投票
1 回答
274 浏览

babel-preset-env - 使用 package.json 测试 babel-preset-env

菜鸟问题在这里。试图向自己保证这是babel-preset-env有效的。

我安装babel-corebabel-preset-env

我的package.json有:

我创建了一个 JS 脚本来测试:

我用箭头函数测试my.js

无论我如何调整targets.browsers,箭头函数都不会被转换。

0 投票
2 回答
396 浏览

babeljs - babel-preset-env 不改变构建大小

我有一个与 webpack 捆绑并使用 babel 的 ES6 React 应用程序。我正在配置 babel-preset-env,对于节点,一切工作正常,但对于浏览器,无论目标百分比如何,我的构建大小都不会改变。当区间 >1 或 90% 时,大小相同。

webpack 版本是1.13.1,我的 babel 版本6.26.0和 babel-preset-env 版本是1.6.1

我的 .babelrc 中有这个