如何让WebStorm识别Jasmine方法?

Joe*_*ite 131 jasmine webstorm

我有一个node.js项目,其中包含一些Jasmine规范.规范位于spec /子目录中,并且具有.spec.coffee扩展名,如jasmine-node所示.

当我在WebStorm IDE中打开我的一个spec文件时,所有对beforeEachand describe和的调用it都显示为带有工具提示的蓝色波浪形下划线:"未解析的函数或方法it()".因此即使我使用3.0 EAP并且它应该有一定量的Jasmine支持,它也不会自动发现这是一个Jasmine规范文件.

我尝试进入文件>设置> JavaScript库,并添加Jasmine作为库(指定jasmine-2.0.0.rc1.js的路径),然后转到Usage Scope子页面并检查"Jasmine"中的"Project"旁边的下拉列表,但没有效果 - Jasmine方法仍然显示为未解决.

如何告诉WebStorm spec子目录中的所有文件和/或扩展名为.spec.coffee的所有文件都是Jasmine测试,并让它识别那些测试正在使用的Jasmine API?

ouj*_*sky 233

您可以在Webstorm/PHPStorm/Idea中使用预定义的JS库存根

  • 打开文件>设置...
  • 选择语言和框架 > JavaScript>库
  • 点击下载...

JavaScript库设置

  • Swich到TypeScript社区存根
  • 找到karma-jasmine(最初名为jasmine)(如果这不起作用,请尝试使用jasmine)
  • 单击" 下载并安装"

在此输入图像描述

我正在使用Jasmine 2.0的这个设置

  • 如果您没有使用业力,您可以选择'jasmine'库进行下载.这是尝试业力茉莉花后对我有用的东西 (35认同)
  • 虽然我正在使用业力,但我必须下载_jasmine_以使其工作._karma-jasmine_不起作用. (21认同)
  • 对我不起作用."describe","beforeEach","it"仍然以灰色下划线显示. (7认同)
  • 它被称为karma-jasmine,他们改变它只是为了帮助我们找到它 (2认同)
  • 最后一步 - 重启IDE (2认同)

Era*_*ran 29

在使用webstorm 2016.1.1的Mac上,我做了以下事情:

  1. 打开首选项(webstorm-> preference或[command +,])
  2. 转到库和框架 - > javascript - >库
  3. 下载
  4. 从列表中选择'jasmine - DefinitelyTyped'

茉莉花支持添加到webstorm

  • 它在Mac上适用于我,但我需要关闭并重新启动WebStorm. (4认同)

pra*_*thv 6

请注意,如果您使用代码质量工具(如JSHint和WebStorm),添加全局jasmin/karma-jasmine库并没有消除JSHint错误.

您需要通过WebStorm的菜单系统(Lang&Frameworks> JavaScript>代码质量工具> JSHint)访问JSHint设置,然后单击复选框以使其知道它正在运行的环境.

JSHint设置