如何在ember-cli中声明jshint的全局变量以便忽略?

spi*_*ock 4 sinon jshint ember.js ember-cli

我在我的规范中使用sinon并将其包含在ember-cli文档中描述的Brocfile中.这有效,我可以在我的规格中使用sinon.但是,jshint抱怨没有定义sinon:

1 error: expected false to be truthy
    AssertionError: unit/views/edit-todo-test.js should pass jshint.
    unit/views/edit-todo-test.js: line 11, col 18, 'sinon' is not defined.
Run Code Online (Sandbox Code Playgroud)

我可以通过在规范中将sinon声明为全局来解决这个问题:

/* global sinon */
Run Code Online (Sandbox Code Playgroud)

但是,我必须将它添加到每一个规格(沿beforeEach,afterEach等...).我更愿意只在全局配置一次,但是当我将这些全局变量添加到predef.jshintrc中的数组时,它们不会被忽略,我仍然会得到错误.例如:

.jshintrc:

{
  "predef": [
    "document",
    "window",
    "-Promise",
    "sinon"
  ],
<-- snip -->
Run Code Online (Sandbox Code Playgroud)

仍然失败并出现错误 'sinon' is not defined.

任何帮助将不胜感激.谢谢!

rog*_*rog 11

你正在编辑错误的.jshintrc文件.位于根目录中的那个是针对该应用的.

测试还有一个附加.jshintrc文件.编辑位于的那个/tests/.jshintrc.

  • 真棒.谢谢! (2认同)