运行Grunt报错求助:jshint任务触发E031赋值错误
解决Grunt运行时JSHint报E031错误的问题
嘿,我看你跟着Steven Foote的《Learning to Program》学自动化,装好了Grunt CLI却碰到报错了——这个JSHint的E031错误其实很好解决,咱们一步步来:
首先看报错信息里的关键部分:[L3:C21] E031: Bad assignment. '<p>' + projectName = ' ' _ versio...,这个错误的核心是你把赋值操作写反了位置。
错误原因
JavaScript里的赋值语句,左边必须是一个可以被赋值的变量(比如projectName),而你现在写的是把值赋给了<p>' + projectName这个字符串拼接表达式——这完全不符合语法规则,JSHint当然会报错。
修复方法
打开你的js/prompt.js文件,找到第3行第21列附近的代码,把错误的写法改成正确的形式:
错误示例(你当前的代码):
'<p>' + projectName = '你的项目名' + ' 版本号';
正确写法(二选一,看你的实际需求):
- 先给变量赋值,再做字符串拼接:
// 先给projectName赋值 projectName = '你的项目名'; // 再把拼接后的结果存到变量里 var displayText = '<p>' + projectName + ' 版本号';
- 如果是要把拼接后的内容赋值给某个变量,直接把整个表达式放在赋值符号右边:
var displayText = '<p>' + projectName + ' = ' + version;
验证修复
改完代码后,重新在终端运行:
grunt
这时候JSHint应该就不会再报这个错误啦。
内容的提问来源于stack exchange,提问作者strasbal
相关产品推荐
相关产品推荐

