重新定义'expect'

Redefinition of 'expect'

本文关键字:expect 定义 新定义      更新时间:2023-09-26

我正在运行jshint,得到这个错误:

line 6 col 5重新定义'expect'.

:

var expect = require('chai').expect;

这是否意味着expect是一个保留关键字?我在项目的其他地方没有看到定义的关键字,当我从测试中删除它时,测试显示:

expect未定义

如何修复这个jshint错误?

这个特定错误的JSLint文档显示,当您试图声明具有与内置本机对象相同标识符的变量时,会生成该错误。这可能会导致混淆,因为人们可能期望内置的本机对象和您自定义的对象。

简单的解决方案是:使用另一个标识符。

另一个解决方案是让JSLint不将expect视为全局标识符。您可以在.jshintrc文件中添加以下内容:

"globals": {
    "expect": true
}

如果您的JSHint配置在其globals数组中定义了expect,则会发生这种情况。

删除它,因为你特别依赖于它是一个预先存在的全局