Webstorm 可以与 Chai 语言链配合使用吗?

Can Webstorm play nice with Chai language chains?

我正在为当前的 Node.js 项目使用 Mocha+Chai。我的 IDE 是 Webstorm 11。

不幸的是,Webstorm 似乎无法弄清楚 Chai 的 should/expect 中的语言链应该如何工作。以下是常见的:

我已经尝试通过 Settings->Javascript->LibrariesChaiChai-DefinetlyTyped 明确设置为我的项目的库,但这并没有解决任何问题。

为了工具支持,我考虑过放弃 expect/should 来代替 assert,因为这非常有效。然而,我非常喜欢expect/should的风格,所以如果能看到解决这个问题的方法会很棒。

问题是由这些链的奇怪动态定义方式引起的。作为解决方法,我建议使用 chai.d.ts:

  • 打开“Settings | Languages & Frameworks | JavaScript | Libraries
  • 点击“Download...”按钮然后select"TypeScript community stubs"
  • 找到 "chai" 并点击“Download and Install”。