![](/img/trans.png)
[英]ECMAScript 6 spread syntax in object deconstruction. Support in TypeScript and Babel
[英]Conditional assignment and ECMAScript proposed object spread syntax
我正在玩分配和建议的对象扩展语法,我想知道是否有办法只分配一个条件的东西?
例如,我目前有以下内容:
const requestHeaders = { ...headers };
if (accessToken) {
requestHeaders.Authorization = `Bearer ${accessToken}`;
}
const h = {
Accept: 'application/json',
...requestHeaders,
},
我想用这样的东西简化它:
const requestHeaders = {
...headers, {
Authorization: accessToken ? `Bearer ${accessToken}` : void 0, // I don't want Authorization to appear in the object if it's null or undefined, but this doesn't work
}
};
const h = {
Accept: 'application/json',
...requestHeaders,
},
有没有办法有条件地为对象分配属性?
谢谢
你可以使用这种风格
const requestHeaders = {
...headers,
...(accessToken ? {
Authorization: `Bearer ${accessToken}`,
} : {}),
};
您可以使用所需的键扩展对象,也可以使用空对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.