在禁用 eslint 的情况下解决 no unused Expression Error?
Solve no unused Expression Error with out disabling eslint?
我正在使用 React。我有一个函数,它连接一个对象的键和 returns 作为字符串的结果。我收到一个如下所示的错误:
第 64:7 行:需要赋值或函数调用,却看到了表达式 no-unused-expressions
我的功能如下图
const allConcat = (listOfObj) => {
let stringConcat = '';
Object.keys(listOfObj).map((item, i)=>{
(listOfObj[item] === 1)? stringConcat += item : null
});
return stringConcat
}
这是每个版本的一个,我也遇到了这个错误。
const allConcat = (listOfObj) => {
let stringConcat = '';
Object.keys(listOfObj).forEach(item =>{
(listOfObj[item] === 1)? stringConcat += item : null
});
return stringConcat
}
请让我知道我可以做些什么来摆脱这个错误。除了禁用 linter。
您可以使用 array.reduce 实现相同的效果,而不必创建 let 常量或迭代两次:
const allConcat = (listOfObj) =>
Object.keys(listOfObj).reduce((acc, curr, index, array) =>
listOfObj[curr] === 1 ? acc.concat(array[index + 1] ? `${curr}, `: curr) : acc,
'');
改变这个
const allConcat = (listOfObj) => {
let stringConcat = '';
Object.keys(listOfObj).map((item, i)=>{
(listOfObj[item] === 1)? stringConcat += item : null
});
return stringConcat
}
至此
const allConcat = (listOfObj) => Object.entries(listOfObj)
.filter(([key, val]) => val === 1)
.map(([key]) => key)
.join('')
我正在使用 React。我有一个函数,它连接一个对象的键和 returns 作为字符串的结果。我收到一个如下所示的错误: 第 64:7 行:需要赋值或函数调用,却看到了表达式 no-unused-expressions
我的功能如下图
const allConcat = (listOfObj) => {
let stringConcat = '';
Object.keys(listOfObj).map((item, i)=>{
(listOfObj[item] === 1)? stringConcat += item : null
});
return stringConcat
}
这是每个版本的一个,我也遇到了这个错误。
const allConcat = (listOfObj) => {
let stringConcat = '';
Object.keys(listOfObj).forEach(item =>{
(listOfObj[item] === 1)? stringConcat += item : null
});
return stringConcat
}
请让我知道我可以做些什么来摆脱这个错误。除了禁用 linter。
您可以使用 array.reduce 实现相同的效果,而不必创建 let 常量或迭代两次:
const allConcat = (listOfObj) =>
Object.keys(listOfObj).reduce((acc, curr, index, array) =>
listOfObj[curr] === 1 ? acc.concat(array[index + 1] ? `${curr}, `: curr) : acc,
'');
改变这个
const allConcat = (listOfObj) => {
let stringConcat = '';
Object.keys(listOfObj).map((item, i)=>{
(listOfObj[item] === 1)? stringConcat += item : null
});
return stringConcat
}
至此
const allConcat = (listOfObj) => Object.entries(listOfObj)
.filter(([key, val]) => val === 1)
.map(([key]) => key)
.join('')