2013-07-31 3 views
3

Я знаю, что это очень простой вопрос, но очень странно, что я не могу заставить его работать, проведя часы, мне действительно нужна помощь.Sublime Linter/ReferenceError: окно не определено?

  • OSX 10.8.4
  • возвышенного Текст 2 Версия 2.0.2 Сложение 2221
  • узел v0.10.15
  • jshint v2.1.7

На самом деле, я чищу установленный возвышенный текст 2 только для этого; только Sublime Package Control был установлен.

Во-первых, я подготовил 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/

Выглядит просто, и Sublime ЛИНТЕР явным образом успешно установлена, и readme появляется как видео-шоу в 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) 

EDIT: нормально, это, кажется, ошибка, я должен был проверить там первый ..

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 конфигураций текста пакета.

+0

Спасибо. Я заметил, что. –

+0

Да, я так и думал - ваша собственная связь, наконец, привела меня к этому решению, но я хотел бы предоставить его здесь и другим пользователям stackoverflow. – 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

Смежные вопросы