报错现象:
改写一:在case外声明变量
改写二:用var声明:
switch (row.redirectType) {
// 跳转类型:1.网页链接;2.app内部跳转---课程;4.社团详情--------后续加跳转类型这里case需要根据redirectType跳转类型增加
case 1:
return row.redirectUrl
case 2:
return `课程:${JSON.parse(row.parm).name || '未知'}`
case 4:
var arr = this.associationOptions.filter(
(item) => item.id === row.parm
)
// console.log('arr:', arr)
if (arr.length !== 0) {
return `社团:${arr[0].name}`
}
return '社团:未知'
default:
return '-'
}
原因:配置文件"extends": "eslint:recommended" 属性启用了此规则。
该规则禁止词法声明 (let、const、function 和 class) 出现在 case或default 子句中。
原因是,词法声明在整个 switch 语句块中是可见的,
但是它只有在运行到它定义的 case 语句时,才会进行初始化操作。
为了保证词法声明语句只在当前 case 语句中有效,将你子句包裹在块中。