是的,我知道,这类问题已被问过太多次了。 但我有一个小细节,我想澄清一下。
我们在正文中有一个脚本标记:
<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加载脚本的内容和方式。
答案 0 :(得分:2)
只需为require.js错误添加错误处理程序:
requrejs.onerror = function() {
// do your error hadling stuff but don't throw exception!
}
(感谢@maestro)