javascript - AngularJS 加载并使用 javascript 检查语法

标签 javascript angularjs syntax load

我正在尝试向我的网站添加加载覆盖层,具体取决于 angularjs 是否加载且没有任何错误。

目前我有以下小脚本,可以让我检查 angularjs 是否已加载:

<script type='text/javascript'>
    window.onload = function () {
        if(typeof angular == 'undefined') {
         document.getElementById("page-loader-overlay").style.display = "block";
        } else {
         document.getElementById("page-loader-overlay").style.display = "none";
        }
    };
</script>

我还想检查的是,确保浏览器不会由于特定浏览器可能无法读取的部分代码而给出任何特定的语法错误,从而使上述检查变得过时。

是否有特定的方法可以为此检查添加语法检查?

提前致谢。

最佳答案

当然,您可以使用全局 onerror handler 检测语法错误。 ,并检查错误是否是 SyntaxError 的实例:

<script>
onerror = function(messageOrEvent, source, lineno, colno, error) {
  if (error instanceof SyntaxError) {
    console.log('Caught a syntax error: ', arguments);
  }
}
</script>
<script>
let f/4; // syntax error
</script>

关于javascript - AngularJS 加载并使用 javascript 检查语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43609666/

相关文章:

angularjs - Angular UI Bootstrap Modal 不适用于 ng-include

.net - IronRuby - .NET 4.0 - 方法名称末尾的问号和感叹号

c# - 覆盖显式接口(interface)实现?

C - void 函数(void)、参数和返回值

javascript - Rails 将 JavaScript 对象存储到模型的有效方法?

javascript - Axios.get 返回纯 html 而不是 JSON 返回数据

javascript - AngularJS 的链式 promise

javascript - ES6 模块的 "import"正式兼容 CommonJS 和 AMD?

javascript - 推特位置未定义

javascript - Nodejs ExpressJS sendFile 与 Angular 资源