Как я могу заставить WebStorm распознавать методы Jasmine?

У меня есть проект node.js, который содержит некоторые Jasmine. Спецификации находятся в подкаталоге spec/и имеют расширение .spec.coffee, как требуется jasmine-node.

Когда я открываю один из моих файлов спецификаций в WebStorm > IDE, все вызовы beforeEach и describe и it отображаются с синий squiggly подчеркивает с помощью всплывающей подсказки: "Неразрешенная функция или метод it()" . Поэтому, хотя я использую 3.0 EAP, и он должен иметь некоторое количество поддержки Jasmine, это не автоматически подбирая тот факт, что это файл спецификации Jasmine.

Я попытался перейти в "Файл" > "Настройки" > "Библиотеки JavaScript" и добавить Jasmine в качестве библиотеки (указав путь к jasmine-2.0.0.rc1.js), а затем перейдя в подстраницу "Область использования" и выбрав "Жасмин" в раскрывающемся списке рядом с "Проектом" , но это не повлияло - методы Жасмина все еще отображаются как нерешенные.

Как я могу сообщить WebStorm, что все файлы в поддиректории spec и/или все файлы с расширением .spec.coffee являются испытаниями Jasmine и распознают ли они API Jasmine, которые используют эти тесты?

Ответ 1

Вы можете использовать предопределенные заглушки библиотеки JS в Webstorm/PHPStorm/Idea

  • Откройте Файл > Настройки...
  • Выберите JavaScript > Библиотеки
  • Нажмите Загрузить...

JavaScript Library settings

  • Swich to TypeScript заглушки сообщества
  • Найти карма-жасмин (первоначально под названием жасмин) (если это не сработает, попробуйте Жасмин)
  • Нажмите Загрузить и установите

enter image description here

Я использую эту настройку с Jasmine 2.0

Ответ 2

На mac с webstorm 2016.1.1 я сделал следующее:

  • Открыть настройки (webstorm- > предпочтение или [команда +,])
  • Перейти к библиотекам и фреймворкам → javascript → libraries
  • скачать
  • выберите 'jasmine - DefinitelyTyped' из списка

Добавлена ​​поддержка жасмина в webstorm

Ответ 3

Обратите внимание, что если вы используете инструмент качества кода, такой как JSHint с WebStorm, добавление глобальной библиотеки jasmin/karma-jasmine не избавляет от ошибок JSHint.

Вам нужно получить доступ к настройкам JSHint через систему меню WebStorm (Lang и Frameworks > JavaScript > Инструменты качества кодa > JSHint) и установить флажок, чтобы он знал, в какой среде он работает.

JSHint setting

Ответ 4

С помощью TypeScript (и Angular2) вам просто нужно включить компилятор TypeScript в настройках WebStorm...

Настройки > Языки и настройки > TypeScript...

Под заголовком компилятора...

Включить TypeScript Компилятор...

(Я также нажал на использование радиостанции tsconfig.json)

Теперь будут распознаны методы жасмина

Ответ 5

Если вы столкнулись с этой проблемой после создания проекта с помощью Angular CLI, перейдите к File -> Settings -> Languages & Frameworks -> JavaScript -> Libraries и отметьте {your-project-name}/node_modules.