const adventurer = {
name:'Alice',
cat: {
name:'Dinah'
}
};
const dogName = adventurer.dog?.name;
console.log(dogName);
// expected output: undefined
console.log(adventurer.someNonExistentMethod?.());
索引.js
JavaScript
VSCode,5 个月前
VSCode,现在
因此,两个屏幕截图均来自 VSCode。 顶部的那张是 5 个月前拍摄的,对象键颜色为灰色,对象本身为红色,后跟点符号。
我认为这可能与 #119 相关,但是设置"editor.semanticHighlighting.enabled": false
似乎并没有解决我的问题,即使在 VSCode 和扩展更新之后,问题仍然存在。
不确定 Atom 中的官方 Dark One 主题是否已更改,或者这不是故意的。
嗨@AbdelrahmanHafez ,感谢您打开问题。 事实上,这正是 Atom 多年来发生的变化,你可以从这张截图中看到:
我的目标一直是提供尽可能接近 Atom 的体验。 所以副作用是这在 VSCode 2.2.0 中也发生了变化。 如果您想恢复旧的行为,您可以按照自述文件中的说明自定义颜色。 此更改的正确范围是:
"editor.tokenColorCustomizations": {
"[Atom One Dark]": {
"textMateRules": [
{
"scope": "meta.object-literal.key.js",
"settings": {
"foreground": "#ABB2BF"
},
}
]
}
}
您应该再次看到它是灰色的:
其他差异,如console.log
,可能只有在我在下一个版本中支持新的semanticHighlighting
时才能修复。
谢谢!
更新后今天遇到了这个问题,并想向上面的@akamud添加另一个建议以更改"variable.other.object.js"
:
"editor.tokenColorCustomizations": {
"[Atom One Dark]": {
"textMateRules": [
{
"scope": "variable.other.object.js",
"settings": {
"foreground": "#E06C75"
},
},
{
"scope": "meta.object-literal.key.js",
"settings": {
"foreground": "#ABB2BF"
},
},
]
}
},
(感谢您指出正确的方向,@akamud;它使找到正确的改变变得非常容易🙂)
@AbdelrahmanHafez @akamud @saurookadook非常感谢!
最有用的评论
更新后今天遇到了这个问题,并想向上面的@akamud添加另一个建议以更改
"variable.other.object.js"
:(感谢您指出正确的方向,@akamud;它使找到正确的改变变得非常容易🙂)