我做了一个复杂的应用程序,捕获流星上的html2canvas.js截图。 除了以下条件,它运作良好。 1.部署到没有--debug选项的服务器。并且, 2.客户端是iOS Safari。流星中部署的代码和调试代码之间有什么区别?
(如果您通过html2canvas.js一个简单的捕获应用程序,它可以很好地用于所有条件,所以我说:“一个复杂的应用程序”,意味着该应用程序包括其他库。)
什么是必要的没有--debug选项和--debug选项之间的区别? (它可以被连接或分开,或者被简化或不被,但它们是等同的。) 显然这种现象表明它们不是等价的。 通过加入iOS上的文件,代码是否存在干扰?
如何有效调试此问题?
[UPDATE] 一旦我使用--debug选项进行部署,并在不使用--debug的情况下重新部署,问题就会消失。 它可能与iOS上的浏览器缓存策略有关。
流星在您的代码上运行缩小器以供生产使用。 Minifiers有时会重命名变量,如果外部库依赖某种动态反射 - 它们可能会中断。这个问题仍然是开放的,也许应该有办法指向某些图书馆,并告诉流星“不要缩小这些东西,它只是打破” – imslavko
谢谢你的有趣的评论。在审查代码时我会关心它。 我仍然不知道我的问题与它不同。它只发生在iOS上,尽管看起来没有OS特定的代码。 – Yuji
这是不是第一次minifiers不好打,肯定应该有一个解决这个 – imslavko