Javascript 重新定义';期望';
我正在运行jshint并出现以下错误: 第6行第5列“预期”的重新定义 对于这一行代码:Javascript 重新定义';期望';,javascript,jshint,chai,Javascript,Jshint,Chai,我正在运行jshint并出现以下错误: 第6行第5列“预期”的重新定义 对于这一行代码: var expect = require('chai').expect; 这是否意味着expect是某个地方的保留关键字?我看不到在我的项目中其他地方定义的关键字,当我从测试中删除它时,测试会显示: expect未定义 如何修复此jshint错误?如果jshint配置在其globals数组中定义了expect,则会发生这种情况 请删除该错误,因为您并不特别依赖于它是预先存在的全局对象。此特定错误的原因表明
var expect = require('chai').expect;
这是否意味着expect是某个地方的保留关键字?我看不到在我的项目中其他地方定义的关键字,当我从测试中删除它时,测试会显示:
expect未定义
如何修复此jshint错误?如果jshint配置在其
globals
数组中定义了expect
,则会发生这种情况
请删除该错误,因为您并不特别依赖于它是预先存在的全局对象。此特定错误的原因表明,它是在您尝试使用与内置本机对象相同的标识符声明变量时生成的。这可能会导致混淆,因为人们可能期望内置的本机对象和自定义对象
简单的解决方案是:使用另一个标识符
另一个解决方案是让JSLLT不考虑<代码>期望> /COD>作为全局标识符。您可以通过将以下内容放入
.jshintrc
文件中来实现:
"globals": {
"expect": true
}
try
window.expect=require('chai')。expect代码>。这是否返回任何错误?在严格模式下,不允许多次声明变量。@DanielCheung这是服务器端测试,我无权访问窗口对象。Expect true不会为我消除此错误:(这是有效的,也是我试图实现的。谢谢!尝试删除它,添加expect:false和expect:true。在所有情况下,错误仍然存在。