我们有一个.net网络表单应用程序,在我们自己的服务器上运行,在过去的24小时内显示出一些奇怪的行为。
Rollbar告诉我多个错误都说某些js函数/变量无法从大量用户中找到 - 基本上破坏了应用程序。我今天开始工作,在chrome dev工具中加载网站只是为了发现它没有显示任何源文件,因此没有js文件加载/单步执行(虽然css和图像文件在那里)。 / p>
为了让事情更加混乱,在刷新页面之后,一切都应该存在?!
昨天发布了应用程序的更新版本,所以我猜这与它有关?
老实说,任何关于我们可以调查以防止它再次发生的事情的任何投机指针都将受到赞赏。
答案 0 :(得分:1)
如果您有多个javascript文件并且您的代码在加载依赖项之前运行,则会出现“未定义”错误。
页面刷新后,依赖项文件已经被缓存,因此它们会立即加载,几乎同步。这就是为什么下次不会出错的原因。
尝试在devTools中禁用缓存并重新加载几次,检查下一次尝试是否仍然有效。
如果出现问题,您可以考虑模块化JavaScript代码并将其作为异步依赖项加载,例如使用 browserify , webpack 甚至 require的.js 即可。无论如何,你可以在主题中找到更多寻找“javascript加载顺序”。