RequireJS似乎在内部执行缓存所需javascript文件的操作.如果我对其中一个必需文件进行了更改,则必须重命名该文件才能应用更改.
将版本号作为查询字符串参数附加到文件名末尾的常见技巧不适用于requirejs <script src="jsfile.js?v2"></script>
我正在寻找的是一种方法来防止这种内部缓存RequireJS所需的脚本,而不必在每次更新时重命名我的脚本文件.
跨平台解决方案:
我现在正在urlArgs: "bust=" + (new Date()).getTime()开发和urlArgs: "bust=v2"生产期间用于自动缓存清除,我在推出更新的所需脚本后增加硬编码版本num.
注意:
@Dustin Getz在最近的回答中提到,Chrome Developer Tools会在调试期间丢弃断点,此时Javascript文件会不断刷新.一种解决方法是编写debugger;代码以在大多数Javascript调试器中触发断点.
服务器专用解决方案:
对于可能更适合您的服务器环境(如Node或Apache)的特定解决方案,请参阅下面的一些答案.
我想知道,有没有办法从Chrome Developer Tools调试器中省略javascript文件,所以它会自动跳过对该脚本的任何函数调用?
我问,因为我的项目通常包括大型库,如jQuery.当我在调试时在Chrome Developer Tools中单步执行javascript时,每次在脚本中进行jQuery调用时,我都必须单步执行jQuery的lib.
我最终必须在每次调用jQuery对象后设置一个断点.这是我发现跳过去的唯一方法,它非常烦人.
我正在使用FireMonkey为OSX开发Delphi应用程序的端口.部分应用程序显示PDF,目前在Windows下使用Acrobat查看器控件或Gnostice组件.这些选项在FireXonkey for OSX中不可用,所以我想知道是否有人有任何想法如何处理这个.我在Cocoa应用程序中使用了Quartz PDFKit PDFView,但无法看到我如何在FireMonkey应用程序中使用它.
我有一个包含2个Javascript文件的网页.第二个文件需要前面的文件.更具体地说,在我的第二个Javascript文件中,我立即使用jQuery的.ajax()方法.是否有可能在一个非常有限的情况下,当我使用它时jQuery可能还没有准备好?
注意:我不想使用$(document).ready(),我不想使用require.js或head.js等库.我只是想确信当我使用它时jQuery会存在,并且Javascript的单线程特性即使在边缘情况下也会受到尊重.
javascript ×3
jquery ×2
browser ×1
delphi ×1
delphi-xe2 ×1
firemonkey ×1
html ×1
macos ×1
pdf ×1
requirejs ×1