0

我正在集成 Emberjs 和 jquery ui。使用http://www.lukemelia.com/blog/archives/2012/03/10/using-ember-js-with-jquery-ui/中提到的方法

一切似乎都正常。

问题如下:

当我有

JQ = {};

声明一个新的命名空间我遇到了这个错误(虽然它在浏览器上工作正常)

JQ 未定义

当我声明相同的变量时

 var JQ = {};

Grunt 没有显示任何错误,但它在浏览器中停止工作。

我查看了浏览器中的组合代码,如下所示

function(){
  var JQ = {};
 }

....其余代码

所以我确定它已被声明,但浏览器看不到它。

所以我找不到问题?也不是解决方案

最好的,
穆罕默德

4

2 回答 2

1

如果你想让 JQ 全球化..将它声明为 window.JQ = {}

我认为问题可能只是掉毛……将 JQ 添加到全局变量中……

为了确保 jshint 不会抛出错误。将 JQ 添加到 .jshintrc 文件中的全局列表中

于 2013-11-05T07:41:55.017 回答
0

当你使用var JQ = {}; 结果是

function(){
  var JQ = {};
}

您的变量仅在该函数的范围内定义,这意味着您不能在该闭包之外使用它。所以,当你使用JQ = {}; 您的编译文件应包含:

function(){
  JQ = {};
}

它定义了全局命名空间中的变量。但是你说你得到了JQ is not defined,所以我建议你检查一下你是否在定义之前不使用变量。

于 2013-11-05T07:10:58.663 回答