我的方案是我正在尝试将标头添加到节点请求对象。但我只是在创建头部数组。
let headers = [];
let options = {
url: this.baseUrl + appconst.route.postMessage
};
if (token) {
console.log(appconst.headers.authToken); // no problem here
let authTokenHeader = { appconst.headers.authToken: token.toBase64() }; // throws
headers.push(authTokenHeader);
}
if (msg) {
headers.push({ 'content-type': 'application/json' });
options.body = JSON.stringify(msg);
}
'投掷'线正在给......
let authTokenHeader = { appconst.headers.authToken: token.toBase64() };
^
SyntaxError: Unexpected token .
你能帮我理解这里发生了什么吗?我很困惑因为定义了“const.headers.authToken”并且它上面的行正常工作。是的,我是JavaScript的新手。
答案 0 :(得分:0)
const
- 是保留关键字。
只需根据您的需要选择另一个。
<强>更新强>
因此,就我们使用appconst
而非const
而言,还有另一个问题:您尝试分配嵌套属性。
有两种解决方法。首先,您可以像这样创建对象文字:
let authTokenHeader = {
appconst: {
headers: {
authToken: token.toBase64()
}
}
};
另一个是创建这样的嵌套属性:
let authTokenHeader = {};
然后你分配属性:
authTokenHeader.appconst = {
headers: {
authToken: token.toBase64()
}
};
一旦我看到另一种定义属性的奇怪方法,但是就我们都希望我们的代码可读而言 - 让我们保持原样。