Javascript 修复函数中无参数重新分配Eslint问题
使用下面的代码,我在许多地方获得了函数参数“recurrence”属性的ESlint error赋值,在这些地方我//ESlint disable next line no param REASign disabled该行。我不想使用禁用。如何在不使用禁用作为合法方法的情况下解决此问题?有人能帮我吗?谢谢Javascript 修复函数中无参数重新分配Eslint问题,javascript,node.js,reactjs,ecmascript-6,Javascript,Node.js,Reactjs,Ecmascript 6,使用下面的代码,我在许多地方获得了函数参数“recurrence”属性的ESlint error赋值,在这些地方我//ESlint disable next line no param REASign disabled该行。我不想使用禁用。如何在不使用禁用作为合法方法的情况下解决此问题?有人能帮我吗?谢谢 onUpdateRecurrence = (recurrence) => { const todayDay = moment().format('D'); cons
onUpdateRecurrence = (recurrence) => {
const todayDay = moment().format('D');
const currentMonth = moment().format('M');
if (recurrence.frequency === 'MONTHLY') {
if (recurrence.days) {
// eslint-disable-next-line no-param-reassign
delete recurrence.days;
}
if (recurrence.day_of_month) {
// eslint-disable-next-line no-param-reassign
recurrence.day_of_month = recurrence.day_of_month;
} else {
// eslint-disable-next-line no-param-reassign
recurrence.day_of_month = `${todayDay}${this.getDaySuffix(todayDay)}`;
}
if (recurrence.month) {
// eslint-disable-next-line no-param-reassign
recurrence.month = recurrence.month;
} else {
// eslint-disable-next-line no-param-reassign
recurrence.month = currentMonth;
}
}
if (recurrence.frequency === 'WEEKLY') {
if (recurrence.day_of_month) {
// eslint-disable-next-line no-param-reassign
delete recurrence.day_of_month;
}
if (recurrence.month) {
// eslint-disable-next-line no-param-reassign
delete recurrence.month;
}
}
if (recurrence.frequency === 'DAILY') {
if (recurrence.day_of_month) {
// eslint-disable-next-line no-param-reassign
delete recurrence.day_of_month;
}
if (recurrence.month) {
// eslint-disable-next-line no-param-reassign
delete recurrence.month;
}
if (recurrence.days) {
// eslint-disable-next-line no-param-reassign
delete recurrence.days;
}
}
return recurrence;
};
您可以将递归赋值给函数中的常量变量,并在函数中使用该变量
onUpdateRecurrence = (recurrence) => {
const recurrenceValue = {...recurrence};
//Your Code
}
所以现在我必须用recurrenceValue.frequency替换recurrence.frequency每个使用recurrence的地方?没错。或者只是简单地将参数名更改为其他名称,并将constvariable name设置为recurrence。所以现在你不必到处更换。谢谢。。。。你也能帮我吗?