sweetalert2 TypeError: this is undefined after v8 upgrade

sweetalert2 TypeError: this is undefined after v8 upgrade

我从 sweetalert2 ^7.32.4 → ^8.11.7 移动,我阅读 v8.0.0 breaking changes and none of my code 直接调用受影响的函数之一。

我想知道是什么导致了这个神秘的错误:(TypeError: this is undefined)

我去看了新的文档示例,它们都是用 Swal.fire() 启动弹出窗口,而之前 Swal() 单独有效。

问题是,如果您在 CHANGELOG.md 中检查 fire,您将看不到该功能的任何提及。但这是一个突破性的变化,因为它以前不是强制性的,现在是。

Here 是针对我的特定问题的解决方案。

正如 README 顶部引用的 SweetAlert2 release note for version 8.0.0 中所报告的,此主要版本发布在调用 Swal 的方式上引入了重大更改。在发行说明中,还有一个 link 说明引入此重大更改的原因。

变更日志实际上在标题 "BREAKING CHANGE: remove withNoNewKeyword enhancer" 下包含了这一重大变更。本次提交内容说明:

From now on the recommended way to use SweetAlert2 is: Swal.fire({...options})