我在创建匿名函数和使用Map方面还很陌生,...i
在以下代码行中的含义是什么。 tia
const airlines = this.state.airlines.map(i => (
{ ...i, editing : this.state.editing && i===item }
)
)
答案 0 :(得分:0)
它被称为spread syntax,在当前上下文中它涉及复制对象。与此相同:
const airlines = this.state.airlines.map(object => {
object.editing = this.state.editing && object === item;
return object;
});
所以我们要做的是创建对象的浅表副本,并向其添加属性。这是扩展语法的目的-制作浅表副本,或为浅表副本收集项(称为rest语法-收集其余项)。这是传播语法的简化示例:
const arr = [{
name: "Jack"
}, {
name: "Joe"
}];
const res = arr.map(e => ({ ...e,
age: Infinity
}));
console.log(res);
.as-console-wrapper {
max-height: 100% !important;
top: auto;
}