2016-04-30 1 views
4

Я пытаюсь использовать мой угловой код, используя угловые, eslint: рекомендуется и рекомендуемые настройки плагина жасмина. Однако я получаю не определенные ошибки в материале жасмина. Моего файл eslint выглядит следующим образом:Eslint angular and jasmine: не определено no-undef

{ 
    "plugins": ["jasmine"], 
    "extends": ["angular", "eslint:recommended", 
    "plugin:jasmine/recommended"], 
    "rules": { 
    "quotes": [ 2, "single"], 
    "strict": [2, "global"], 
    "semi": ["error", "always"], 
    "angular/on-watch": "warn" 
    } 
} 

я получаю следующие ошибки:

3: 1 ошибка 'описывает' не определена не-UNDEF

4: 5 Ошибки «это 'не определено не не-UNDEF

5: 9 ошибок 'ожидать' не определен не-UNDEF

7: 5 ошибка' это не не определено не-UNDEF

8: 9 ошибка 'ожидать' не определено ни-UNDEF

И в моем package.json У меня есть версия 2.3.0 для eslint и 1.8.1 для eslint-plugin-jasmine. У меня также есть версия 0.5.0 для eslint-config-angular и 1.0.0 для eslint-plugin-angular.

Я также пробовал без указания "plugins": ["jasmine"] в моем eslint файле, но затем я получаю сообщение об ошибке, указывающее, что правила жасмина не определены (например, Definition for rule 'jasmine/no-focused-tests' was not found).

ответ

1

С установкой this rule любая переменная, не объявленная явно, вызывает предупреждение. Вы можете установить в верхней части спецификации файла:

/* global describe it expect */ 
+1

Хей, что работает. Но я считаю, что довольно уродливо поставить эту строку во все мои тестовые файлы. Я думал, что это будет плагин с жасмином? Есть ли другой способ, чтобы я помещал это в одно место и применялся ко всем моим файлам спецификаций? –

+0

Правило выполняет свою работу: предупреждение о том, что вы используете глобальную переменную. Вы можете отключить это правило, когда заливаете свои файлы .spec (запустите eslint с отдельными настройками для .spec и кода. Или не используйте листинг вообще в ваших файлах спецификаций или полностью отключите это правило. –

16

Добавление

"env": { 
"jasmine": true 
} 

решить эту проблему. Это было предположение, что я прошел через страницу github плагина eslint jasmine.