【问题标题】:Closure Compiler: JSC_POSSIBLE_INEXISTENT_PROPERTY: Property ajax never defined on jquery闭包编译器:JSC_POSSIBLE_INEXISTENT_PROPERTY:属性 ajax 从未在 jquery 上定义
【发布时间】:2019-04-05 19:04:35
【问题描述】:

我在尝试通过 UI 编译时收到以下警告,一些 JavaScript 代码并尝试通过多种方式抑制它们,但无法编译;我究竟做错了什么? TIA,戴夫吉

// ==ClosureCompiler==
// @language_out ES5
// @output_file_name default.js
// --jscomp_off=missingProperties
// @compilation_level ADVANCED_OPTIMIZATIONS
// ==/ClosureCompiler==

if (test_connection == true) {
  jquery.ajax({
    type: "GET",
    url: url + index,
    async: false,
    headers: http_headers,
    error: function(response) {
      throw new Error("Error connecting to Search Engine: " + response.statusText);
    }
});

error: function(response) {
  throw new Error("Error querying Search Engine: " + response.statusText);
  console.log(errorThrown);

JSC_POSSIBLE_INEXISTENT_PROPERTY:属性 ajax 从未在 jquery 第 26 行字符 10 处定义 jquery.ajax({

JSC_UNREACHABLE_CODE:第 82 行字符 4 处无法访问代码 console.log(errorThrown);

【问题讨论】:

    标签: javascript jquery closures


    【解决方案1】:

    JSC_POSSIBLE_INEXISTENT_PROPERTY:属性 ajax 从未在 jquery 第 26 行字符 10 处定义 jquery.ajax({

    这是因为变量名应该是jQuery$,而不是jquery(假设你没有给jQuery 起别名,但我假设不是因为你不会有错误)。请记住,Javascript 是区分大小写的。

    JSC_UNREACHABLE_CODE:第 82 行字符 4 处无法访问代码 console.log(errorThrown);

    这是因为您将代码置于throw 调用之后,执行将退出函数。将console.log() 移到throw 之前。

    还请注意,您应该删除async: false,因为这是非常糟糕的做法。您应该改用回调模式;就像 error 处理程序一样。

    【讨论】:

    • 试过 jQuery 和 $,同样的问题..JSC_POSSIBLE_INEXISTENT_PROPERTY: 属性 ajax 从未在 jQuery 上定义在第 25 行字符 10 jQuery.ajax({ JSC_POSSIBLE_INEXISTENT_PROPERTY: 属性 ajax 从未在 $ 上定义在第 25 行字符 5 $ .ajax({
    • 在哪种情况下,您确定您已将 jQuery.js 正确添加到页面中?还要检查你没有使用 jQuery 的“slim”版本,因为它没有任何 AJAX 功能等等。
    • 移动 console.log 可以解决这些警告,非常感谢。至于 ajax 错误,而不是别名 jQuery 或 $,这是我需要做的事情才能关闭以干净地编译吗?我是这个编译器的新手,所以请多多包涵..
    • 我在我的 HTML 页面中定义了 jQuery,因为 Javascript 包含具有全局范围,所以这个 js 文件仍然可以访问 jQuery。它的定义如下: 这段代码在本机运行良好,只是试图关闭它..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-28
    • 2017-12-30
    • 2019-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多