当我调用像jQuery.ajax这样的jQuery方法时,我使用$ .ajax。 Resharper正在从jqGrid的代码中获取一些东西,这使得它想要在我输入$时自动完成$ t。它使jQuery编码真的很慢 - 有谁知道我怎么能禁用它?
更新
我知道可以从工具中完全暂停Resharper - >选项 - > Resharper - >一般 - >暂停,但我真的只是想让它单独留下我的javscript;(
答案 0 :(得分:1)
我认为在您的代码或jqGrid的代码中某处定义了全局变量$t
。 jqGrid的代码有很多地方,比如
methodName: function (methodParameters) {
return this.each(function () {
var $t = this, ...
...
});
}
因此,有许多地方定义了 local 变量$t
。在其他方法中,您会看到var t = this
或var ts = this
或var self = this
,依此类推。
所以我想,在你使用的jqGrid代码中的某个地方有杯子&粘贴错误:一个复制了另一个方法中定义var $t = this
的函数的代码,其中一个使用另一个变量名来保存this
。因此$t
将被解释为全局变量。
我建议您在代码中找到$t
的定义。只需在$t
上按 F12 或使用Resharper的其他可能性来查找全局 $t
变量的定义位置。
答案 1 :(得分:1)
缺乏真正的解决方案,更好的解决方法是在解决方案的common.js文件中定义$
函数。
$ = $;
这不能解决$t
或您看到的任何其他全局方法(我的情况为$e
)的问题,但它应该建议您的common.js文件中的$
作为最重要的建议。
我喜欢这项工作比修改有问题的jQuery插件源文件更多,因为我不想每次更新插件时都重新应用此修改。此外,我不必担心可能通过更改变量名称或消除全局变量来破坏任何内容。