使用闭包编译器时如何保留 jQuery.ajax.data 对象?

发布于 2024-11-15 21:32:25 字数 452 浏览 3 评论 0原文

当使用带有 ADVANCED_OPTIMIZATIONS 的闭包编译器时,jQuery.ajax.data 对象被更改:

$.ajax({
  type: "POST",
  url: "ajax.php",
  data: {
     act : "some"
  },
  success : function(data){}
});

jQuery.ajax.data 对象被转换为 {L : "some"}

我可以使用引号,例如 'act ' : "some",但我希望它无需引号即可工作。 在我的 externs 文件中有:

/** @type {Object.} */ jQuery.ajax.data; 但这行不通。闭包编译器版本 1043

When using closure compiler with ADVANCED_OPTIMIZATIONS, jQuery.ajax.data object is changed:

$.ajax({
  type: "POST",
  url: "ajax.php",
  data: {
     act : "some"
  },
  success : function(data){}
});

jQuery.ajax.data object is converted to {L : "some"}

I can use quotes, like 'act' : "some", but I want this to work without quotes.
In my externs file there is:

/** @type {Object.<string,*>} */
jQuery.ajax.data;

But this doesn't work. Closure compiler version 1043

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

北城半夏 2024-11-22 21:32:25

尝试使用类似以下内容的外部程序:

var jQuery = {};
jQuery.ajax = {
    data: '' 
}

This will not rename 'jQuery.ajax' and 'jQuery.ajax.data'

Try the externs with something like :

var jQuery = {};
jQuery.ajax = {
    data: '' 
}

This will not rename 'jQuery.ajax' and 'jQuery.ajax.data'

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文