我想将以下JSON发送到服务器:
{"active": "true"}
我尝试这样做:
axios.patch('/api/musician/' + id, { key : val }).then(function (response) {
变量key和val包含我想要的内容:
console.log(key); // active
console.log(val); // true
然而,发送的是:
{key: true}
我无法理解为什么变量的价值" key"没用过。为什么不发送{"活跃":" true"}或{"活跃":true}?
答案 0 :(得分:2)
这是因为{key: value}
是一个对象文字。您将键定义为字面上的“键”,将值定义为动态值。
为了得到你想要的,你可以像Jaromanda X上面所说的那样做:
{ [key] : val }
这应该适用于现代JS。
如果您没有最新的幻想,请将该对象的构造移出该函数调用:
var data = {}
data[key] = value
这将允许您使用变量key
作为名称。