[英]Is Stripe Checkout leaking memory?
我看到的问题是,当您使用规范的“自定义”指南将Stripe Checkout加载到页面中时,对其进行配置,然后打开和关闭它几次,浏览器内存使用量会不断跳跃。 有时,sorta会稍微释放,但残留总是会增长。 在一个长期存在的页面/ SPA上,最终会有东西爬行。
--enable-precise-memory-info
标志启动Google Chrome(无论是否带有此标记,都会出现问题) stripeInstance.open(cfg)
),摆弄弹出窗口,关闭。 您可以使用memory-stats.js或仅在(Chrome)控制台中运行来观看内存:
performance.memory.usedJSHeapSize
我确信这必须是“我”而不是条纹。 他们在open
和close
事件上都不会泄漏那么糟糕吗?
编辑:这是一个JS小提琴,它可以复制他们的演示代码: https : //jsfiddle.net/p1Lfuewt/
还有一个5秒间隔的内存屏幕截图,基本上只需点击“购买”即可打开和关闭它们的小部件(不知道那个承诺错误是什么,就是这些):
不可能确切知道,但是他们可能会保留一些从未被释放的数据,或者可能是chrome的java脚本引擎,试图将所有内容缓存到未来。 您应该尝试单独离开页面一段时间,看看缓存是否出现故障。
简短的回答,是的。
较长的答案是,它肯定好像它。 附加的JSFiddle示例复制了Stripe规范文档 ,并且通过简单的打开和关闭Stripe的小部件的行为来复制内存问题是微不足道的。
handler.open({
name: 'Stripe.com',
description: '2 widgets',
zipCode: true,
amount: 2000
})
// Repeat for 💥
我们实施的(可怕的)解决方法是跟踪打开+关闭事件的数量,并在边缘情况达到这些级别的X事件后强制重新加载。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.