#javascript #node.js #ecmascript-6 #axios
#javascript #node.js #ecmascript-6 #axios
Вопрос:
const user = {}
user.fname = John
user.lname = Doe
axios.post({
url,
headers,
params: user // but here I want to have the fname set to Jane instead of John
}).then(...).catch(...)
Я знаю, что могу установить его раньше, но мне нужно делать это «на лету» прямо при использовании объекта.
Спасибо.
Ответ №1:
Не совсем ES6, потому что расширенная нотация для объектов новее, но вы можете
axios.post({
url,
headers,
params: { ...user, fname: 'Jane' }
}).then(...).catch(...)
Ответ №2:
Как насчет оператора распространения?
axios.post({
url,
headers,
params: {
...user,
fname: 'Jane' // but here I want to have the fname set to Jane instead of John
}
}).then(...).catch(...)
Вы также можете использовать Object.assign
как:
Object.assign(user, { fname: 'Jane' })
Ответ №3:
Вы можете использовать синтаксис spread, чтобы сохранить другие свойства и перезаписать то, что вам нужно:
const user = {}
user.fname = John
user.lname = Doe
axios.post({
url,
headers,
params: {...user, fname: "Jane"}
}).then(...).catch(...)