У меня есть такой объект, как -
{
"year2018": {
"student": {
"class8": [
{
"email": "bob.manuel@gmail.com",
"fullName": "Bob Manuel"
},
{
"email": "Sam.manuel@gmail.com",
"fullName": "Sam Manuel"
}
],
"class7": [
{
"email": "mona@gmail.com",
"fullName": "Mona kelly"
}
]
},
"fee": {
"code": "f1",
"name": "International"
},
"campus": {
"name": "ABC",
"sqft": 1000
}
}
}
Вышеуказанный объект прибывает из службы как - this.getSettings (). Take (1)
Теперь у меня есть новый объекткак-
"class7": [
{
"email": "mona@gmail.com",
"fullName": "Mona kelly"
},
{
"email": "nikki@gmail.com",
"fullName": "Nikki Nona"
}
]
Я хочу заменить этот объект в исходном объекте, поэтому мой новый объект выглядит как
{
"year2018": {
"student": {
"class8": [
{
"email": "bob.manuel@gmail.com",
"fullName": "Bob Manuel"
},
{
"email": "Sam.manuel@gmail.com",
"fullName": "Sam Manuel"
}
],
"class7": [
{
"email": "mona@gmail.com",
"fullName": "Mona kelly"
},
{
"email": "nikki@gmail.com",
"fullName": "Nikki Nona"
}
]
},
"fee": {
"code": "f1",
"name": "International"
},
"campus": {
"name": "ABC",
"sqft": 1000
}
}
}
Мой текущий код выглядит как -
var KEY = year2018, key1= student, key2 = class7;
const saveStream = this.getSettings().take(1).map(settings => ({ [KEY]: Object.assign(settings, { [key1]: value }) })).flatMap(dt => this.http.put(this.url, dt).map(res => dt)).pluck(KEY).share();
.Нотация не работает для меня, я хочу использовать ключ переменной