问题标签 [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 投票
0 回答
137 浏览

babeljs - 使用 babel / browserslist 提供 *not* 支持的回退消息

是否有任何钩子或插件可以用作 Babel-verse 的一部分(例如,@babel/preset-env,使用带有浏览器列表的 Rollup 插件,作为 core-js 中的钩子等)来检测缺乏是否支持目标功能或目标浏览器范围内不存在,并允许一个人挂钩此信息以将一个人的应用程序重定向到一个通用的不受支持的页面(如果不是针对特定缺乏功能定制的页面)?

如果无法确保如果一个人在排除浏览器方面过于激进useBuiltins,那么这些用户将在最少要注意可以支持复合应用程序的浏览器。

0 投票
1 回答
388 浏览

webpack-4 - 多个带有 browserslist 和 babel preset-env 的 webpack 包

  • 我正在使用 Webpack 4 进行捆绑。
  • 我有多个 Webpack 配置以webpack.config.js.
  • 第一个配置是捆绑针对浏览器的 lient 代码。
  • 第二种配置是捆绑服务器代码目标节点。
  • 我使用 browserslist in 指定这些浏览器和节点目标package.json

我需要为客户端和服务器包指定不同的浏览器列表,但我只有一个 browserslist 键package.json

如何使用 package.json 指定不同的浏览器列表?

0 投票
1 回答
24 浏览

node.js - 尝试使用反应渲染时出现意外标记,预期“,”

我曾经工作过的代码,但是在对包进行了很多重大更新之后,我一直在处理一些错误。现在让我陷入困境的是以下内容:

这是错误消息:

我个人对这个代码/反应不太熟悉,并且是这个项目的新开发人员,试图让事情更新。目前尚不清楚这里的问题是什么以及为什么在现在构建时触发它,但旧版本的软件包没有问题。

编辑:

以前在 babel Ies2015中使用了预设,现在已更改@babel/preset-env为 babel 页面上的建议,因为不推荐使用 es2015:https ://babeljs.io/docs/en/babel-preset-es2015 。我想知道这是否与问题有关。

0 投票
1 回答
1255 浏览

babeljs - 如何配置 babel/preset-env 以包含 core-js URLSearchParams polyfill?

URLSearchParams在我的应用程序中使用。babel代码使用、 使用babel/preset-envcore-js@3包含我目标浏览器所需的polyfill 进行编译。

这是我的 babelrc:

这是我的.browserslistrc

问题是,即使我在 中指定.browserslistrc了 IE11,polyfillURLSearchParams仍然没有包含在最终包中。到目前为止,我已经通过手动导入解决了这个问题,core-js/web/url-search-params.js但我宁愿由babel/preset-env.

我可以babel/preset-env以某种方式配置以包含URLSearchParamscore-js 中的 polyfill 吗?

0 投票
1 回答
208 浏览

webpack - 我可以使用 useBuiltIns:usage 列出 babel/preset-env 应用于每个 webpack 入口点的 polyfill 吗?

我有一个在网页上执行的小型 Javascript 应用程序。它可以在大多数现代浏览器中运行,但不能在 IE 等旧浏览器中运行(因为它使用了 Promise 等一些功能)。我可以使用带有browserlist配置的 babel/preset-envuseBuiltIns:usage添加所需的polyfill ,使其在包括 IE9 在内的所有目标浏览器中运行。但是,添加 polyfill 后文件大小会增加三倍。

我想要一个单独的文件,其中只包含所需的 polyfill,并在必要时手动将该文件加载到页面上(例如,当检测到它是 IE9 时)。

为了实现这一点,我需要知道当我使用 Babel 时应用了哪些useBuiltIns:usagepolyfill,以便我可以手动将这些功能包含在单独的 Webpack 条目中。然后我将useBuiltIns:false用于该应用程序。

有没有办法列出适用的 polyfills babel/preset-env?

0 投票
0 回答
199 浏览

babeljs - 为什么 es3 的特性会被 babel-polyfill 填充?

"useBuiltIns": "usage"我在配置中使用@babel/preset-env + babel-polyfill + corejs3 .babelrc

我使用 browserlist 来定位以下浏览器:

我发现一些 ES3 特性是 polyfill 的,即使它们被认为对所有目标浏览器都可用(根据 CanIUse):

我的目标是最小化文件大小并删除不必要的 polyfill。

我的问题是:为什么 babel-polyfill 决定为 es3 功能添加这些 polyfill?

0 投票
2 回答
3944 浏览

heroku - 将 Node JS 应用程序部署到 Heroku 服务器时出现“npm start”错误

当我将 NodeJS 应用程序部署到 Heroku 服务器时出现此错误。

我的配置:package.json 文件。

我的配置:Procfile 文件

我正在尝试在服务器上运行 babel-node index.js。但收到此错误

我正在寻找修复它,但仍然出现此错误。请帮忙。

更新

已安装依赖项,但仍然出现“npm start”错误。

0 投票
1 回答
202 浏览

webpack - Webpack 带有 babel 加载器的多个预设以及键值对


工作时有一个问题,我发现很难为 babel loader 配置预设,看看,让我知道需要做什么才能修复它。我不打算写整个 webpack 文件,只是我发现问题的一部分。任何帮助将不胜感激

0 投票
0 回答
77 浏览

webpack - 如何为 babel-preset-env 的一组指定目标列出应用转换?

我们使用babel-preset-env组指定的浏览器版本作为目标,以便只应用所需的转换。我们希望使这组版本与供应商支持的版本保持一致,同时在该支持中尽可能保持宽松。那么有没有办法列出应用于一组targets. 例如,如果您执行以下操作(如示例):

那么我们如何知道将应用于该设置的转换集呢?我们想知道这一点,因为 Firefox ESR 最近更新到了 68,并且最好检查一下更新是否会改变所应用的转换的任何内容。另外,将 Safari 版本更新到 12 会改变什么吗?因为如果不是,那么可能值得坚持使用旧版本号来支持更多用户,因为它不会真正改变我们构建输出中的任何内容。

那么有没有办法获取特定集合的转换列表,targets以了解它将如何影响我们的构建输出?

0 投票
1 回答
2966 浏览

build - 使用 @babel/preset-env 和 useBuiltIns:'usage' 时,是否需要导入 core-js/stable 和 regenerator-runtime/runtime?

我将 babel7.8.3@babel/preset-env,useBuiltIns: 'usage'和一起使用corejs: 3@babel/preset-env我不清楚的文档。

我需要在我的入口文件顶部添加以下行还是由 babel 自动完成?