VS Code编辑器中自定义React(TSX)文件标签颜色设置不生效问题
问题原因
你当前配置的语法范围(scope)过宽,和其他更高优先级的token颜色规则产生了冲突:你加入的meta.tag、meta.jsx属于标签的父级语法范围,覆盖了标签属性、属性值、内部文本等子token,这些子token本身自带更高优先级的颜色规则,会覆盖你配置的绿色,所以才会出现开发者工具能识别到你的配置,但实际显示不生效的情况。另外你对标签scope的对应关系也有误:entity.name.tag.html对应原生HTML标签,entity.name.tag.jsx/tsx才对应React自定义组件标签。
修复方案
- 替换你
settings.json中的原有配置为如下内容,建议指定你当前使用的主题,避免全局配置冲突:
"editor.tokenColorCustomizations": { // 方括号内替换为你当前使用的主题名,比如"One Dark Pro"、"Default Dark+" "[Your Current Theme Name]": { "textMateRules": [ // 自定义原生HTML标签(div、span、p等)颜色 { "name": "TSX Native HTML Tags", "scope": "entity.name.tag.html.tsx", "settings": { "foreground": "#18da32" } }, // 自定义React组件标签颜色 { "name": "TSX React Component Tags", "scope": "entity.name.tag.tsx", "settings": { "foreground": "#ff7d00" // 可替换为你想要的组件标签色值 } } ] } }
- 如果你不清楚当前使用的主题名,按快捷键
Ctrl+Shift+P(Mac系统为Cmd+Shift+P),输入「Preferences: Color Theme」,当前高亮的选项即为你的主题名。 - 如果配置后仍不生效,检查是否安装了
Custom CSS and JS Loader、Color Highlight这类会修改编辑器颜色渲染的插件,临时禁用后重试即可,无需重启VS Code。
内容的提问来源于stack exchange,提问作者moys
相关产品推荐
相关产品推荐

