问题标签 [babel-polyfill]

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 回答
451 浏览

webpack - Polyfill 未应用于导入的文件

我正在开发一个使用 ES6 语法的 Vue JS 项目。我通过在我的应用程序入口点 (main.js) 的顶部导入“@babel/polyfill”添加了一个 polyfill,它适用于我的大部分项目。

我现在遇到的问题是 polyfill 没有应用于导入的文件。所以这意味着当

  • 导入我的 ES6 函数后,页面在 Chrome 中正确呈现,但在 IE11 中不正确
  • 当我直接将导入文件的内容(没有导出语法)复制并粘贴到我的主文件中时,页面在两个浏览器中都正确呈现。

在这种情况下,我该如何正确使用 Polyfill?


编辑

: 显然这个问题与 polyfills 无关,而是与 babel 相关。我在这里提出一个新问题

0 投票
0 回答
562 浏览

javascript - 让 IE 等待 babel-polyfill 从外部资源加载

我只需要为 IE加载babel-polyfill 。还需要让 IE 等待并且不要执行console.log('Checkpoint 2');它下面的代码(包括IeOnlyPolyfillTest.js),直到babel- polyfill将从外部资源完全加载。

IeOnlyPolyfillTest.js部分:

首先,我不能添加async="false"属性:

我尝试了以下解决方案(原始答案):

在我的情况下,日志顺序也总是正确的,但是如果有时重新加载页面,我们会随机得到有错误的案例和没有错误的案例(换句话说,错误条件不清楚,并且会逐案发生):

坏情况:

在此处输入图像描述

好案例:

在此处输入图像描述

那么,我们可以做些什么来让console.log('Checkpoint 2');下面的所有脚本等到babel-polyfill完全加载?

0 投票
1 回答
360 浏览

ember.js - Ember 应用程序中的附加组件中的 Object.assign() 导致 IE11 出现问题

我有一个使用多个 3rd 方插件的 Ember 应用程序。这些附加组件之一使用 Object.assign() 导致 IE11 出现问题,特别是错误

错误:对象不支持属性或方法“分配”

我知道为什么会发生这种情况,但我对 Ember 比较陌生,并且不确定处理/解决此问题的最佳方法。根据我的研究,一些选择是:

选项 1:使用polyfills (?)

我认为我可以安装一些额外的库,或者在 Babel 中设置选项来解决这个问题,但到目前为止我还不能这样做。目前尚不清楚这些选项中的任何一个是否会影响附加组件的代码,或者它们是否仅适用于主应用程序中的代码。

选项 2:扩展附加组件以避免 Object.assign()。

不幸的是,有问题的行在组件的 init() 中。当我的扩展组件调用 this._super() 时,我试图避免的代码无论如何都会运行。有没有办法“跳过”基本组件的 init() 并直接进入 Ember 的 Component.init() (附加组件的 _super())?

选项 3:放弃第 3 方附加组件,尽我所能,制作我自己的组件。
令人恼火但可行。在这一点上,从一开始就这样做可能会更快。

选项 4:修复加载项以删除问题代码。我在这里的犹豫有两个方面:1,如果这是我应该在我的应用程序中以某种方式管理的东西,那么进行附加更改似乎是不正确的(尽管肯定有一个“最佳实践”的论点要提出这里)。更大的担忧是这是一个低活动附加组件。即使我提交了包含更改的 PR,我也不确定新版本需要多长时间。
同时,推荐的做法是什么?将我的应用程序指向本地构建,然后记得在发布时将其更新为“官方”版本?

我怀疑选项 1,polyfills 和/或构建设置,是最正确的做法,但我不知道具体要做什么。

附加信息:我的应用程序是使用 Ember 2.7 开发的,我正在将其更新到 Ember 3.1。两个版本中都存在此问题。

0 投票
2 回答
2836 浏览

javascript - 用 ReactJs 创建的页面没有被谷歌索引

我有一个用 ReactJs 创建的新闻部分,每个新闻帖子都充当一个单独的页面。不幸的是,由于 REactJs,谷歌没有索引这些页面。我尝试使用 babel-polyfill webpack,但它仍然无法正常工作。另外,我在渲染 DOM 之前进行了 Ajax 调用。

对此还有其他解决方法的想法吗?

0 投票
1 回答
605 浏览

javascript - 如何在黄瓜 js 项目中使用 babel?

我有一个黄瓜 js 4.2.1,我想在运行测试之前使用 babel。

我找不到有关此集成的任何文档/教程。

有谁知道这是怎么做到的吗?

  • 奖励:使用最新的 babel 版本(7.0.0(非测试版))。

更具体地说,目前,从命令行运行 cucumberjs 时,我没有指定功能文件文件夹和步骤文件夹:./node_modules/.bin/cucumber-js.cmd.

0 投票
1 回答
459 浏览

reactjs - React 应用程序未在 IE11 上加载

我在 IE11 的控制台中收到以下错误 -

我正在6.26.0使用babel-polyfill.

我已经babel-polyfill在 webpack.config.js 中添加了。

0 投票
2 回答
10174 浏览

javascript - 如何使用 babel 7 添加 flatMap?

在阅读了Removing Babel's Stage Presets by的文章后babel,我仍然没有完全理解如何将提案从例如stage-3( flatMap ) 添加到.babelrc.

据我了解,因为flatMap可以用 ES5 编写,所以我需要一个 polyfill 而不是插件。我安装@babel/polyfill在 --save-dev 下,但浏览器仍然告诉我这个方法不存在。我想这@babel/polyfill不包括实验性功能。

0 投票
1 回答
3445 浏览

javascript - 未使用 polyfill 定义 require 来修复 Promise 未在 IE 11 上定义

Promise is not defined在 Internet Explorer 11 上收到错误消息,我已经安装babel-polyfill了 npm 以修复它,并且我在顶部操作中设置了 viw 中包含的 js(简单 js 文件,不是 angular 或任何其他框架)文件这段代码

但我明白require is not defined了。我必须如何包含 polyfill?

0 投票
0 回答
2165 浏览

javascript - Babel 7 Jest Core JS “TypeError:wks 不是函数”

将我的项目升级到 Babel 7 后,通过 Jest 运行测试会引发以下错误。测试在 Babel 6 中运行时没有任何问题,但在 Babel 7 中失败并出现以下错误

笑话配置

文件babel.js.config

文件包.json

我究竟做错了什么?

0 投票
1 回答
13838 浏览

internet-explorer - 如何在供应商捆绑包中使用 babel 的 `useBuiltIns: 'usage'` 选项?

由于我还需要支持 IE11,所以我还需要转译node_modules.

这是我在 node_modules 上使用的 babel 配置:

我使用这些useBuiltIns选项是因为它给出了错误Symbol is not defined,因此需要 polyfill。

然而,这个配置在编译时中断,据说是因为它imports在代码中注入了一些,这里是错误:

TypeError:无法分配给对象“#<Object>”的只读属性“exports”

基本上是不喜欢的module.exports。那么如何useBuiltIns在供应商捆绑包中使用呢?

现在我通过总是需要 babel polyfill 来解决index.html,但这并不理想。