2013-07-31 42 views
3

我知道这是一个非常基本的问题,但很奇怪,我花了几个小时后无法完成工作,我真的需要帮助。Sublime Linter/ReferenceError:窗口未定义?

  • OSX 10.8.4
  • 崇高的文本2版本2.0.2构建2221
  • 节点v0.10.15
  • jshint v2.1.7

其实,我干净安装的崇高文本2只是为了这个;只是崇高包装控制已安装。

首先,我准备了foo.js代码:

function x(a, b) 
{ 
    return a + b 

res = x(10, 20) 
console.log("res = " + res); 

这导致:

$ jshint foo.js          
foo.js: line 3, col 17, Missing semicolon. 
foo.js: line 6, col 16, Missing semicolon. 
foo.js: line 2, col 1, Unmatched '{'. 

3 errors 

所以,jshint作品至今的简单测试的预期。

我尝试过很多事情,才能将其与崇高短绒工作,但没有成功,我干净安装的崇高的应用程序,然后跟着视频教程:

https://tutsplus.com/lesson/sublime-linter/

看起来很容易,和崇高短绒似乎已成功安装并自述文件在00:30以视频节目的形式出现,但在我的情况下,在此之后,保存或任何从未触发任何内容的内容。

嗯,我完全失去了。请指教。谢谢。

UPDATE:

我注意到所示sublimeText控制台中的错误!

Traceback (most recent call last): 
    File "./SublimeLinter.py", line 431, in _update_view 
    File "./SublimeLinter.py", line 143, in run_once 
    File "./sublimelinter/modules/base_linter.py", line 291, in run 
    File "./sublimelinter/modules/javascript.py", line 72, in parse_errors 
ValueError: Error from jshint: /Users/ken/Library/Application Support/Sublime Text 2/Packages/SublimeLinter/sublimelinter/modules/libs/jshint/jshint.js:7881 
})(window) 
^
ReferenceError: window is not defined 
    at Object.require.util (/Users/ken/Library/Application Support/Sublime Text 2/Packages/SublimeLinter/sublimelinter/modules/libs/jshint/jshint.js:7881:4) 

编辑: OK,这似乎是错误,我应该先检查有..

https://github.com/SublimeLinter/SublimeLinter/issues

回答

1

目前解决类似的问题:

这样做的修补程序 - 在Linux安装中 - 添加

global.window = {};

到文件顶部

~/.config/sublime-text-2/Packages/SublimeLinter/sublimelinter/modules/libs/jshint/jshint.js

对于Windows或OS/X安装,您需要找到Sublime Text软件包配置的位置。

+0

谢谢。我注意到了。 –

+0

是的,我这么认为 - 自己的链接最终将我带入了该解决方案,但我想在此为其他计算器用户提供此链接。 – RSeidelsohn

0

对于那些仍然收到此错误,编辑JSHint configuration file并添加以下选项:

"jshint_options": { 
    "undef": true, 
    "unused": true, 
    "browser": true, /* Defines DOM globals such as window, navigator, FileReader, etc. */ 
    "jquery": true, /* OPTIONAL: globals exposed by jQuery */ 
    "devel": true, /* OPTIONAL: globals such as debugging, alert */ 
    "globals": { /* OPTIONAL: set others that aren't predefined by JSHint */ 
    "Modernizr": true 
    } 
} 

了解更多关于pre-defined JSHint global variables