是的,我知道,这种问题已经被问过太多次了。 但我有一个小细节想澄清。
正文中有一个脚本标签:
<script type="text/javascript" data-main="/js/app.87d28433.js" src="/js/external/requirejs/require.js"></script>
我们使用 requirejs api 来加载 googleTagManager:
require(["//www.googletagmanager.com/gtm.js"], function () { ... })
但是,我们无法控制 GTM 加载的脚本以及加载它们的方式。所以,最后,我们在正文中得到了很多加载脚本的脚本标签,例如 FingerprintJS ,它声明匿名定义模块。
是否有可能以任何方式绕过此行为并保持 requirejs 事件?
我们再次无法控制 GTM 加载脚本的内容和方式。
最佳答案
只需为 require.js 错误添加错误处理程序:
requirejs.onerror = function() {
// do your error hadling stuff but don't throw exception!
}
(感谢@maestro)
关于javascript - 加载外部脚本时匿名define()模块不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28306780/