如何在Visual Code中拼接含引号的字符串并禁用自动引号修改?
解决VSCode引号自动修改与字符串拼接问题
一、关闭VSCode的引号自动修改功能
要阻止VSCode自动修改代码中的引号,可通过以下设置调整:
- 打开设置界面(快捷键
Ctrl+,或Cmd+,) - 在搜索框输入
quote,修改以下相关设置:- Editor: Auto Closing Quotes:设为
off,关闭自动补全引号功能 - Prettier: Single Quote(若使用Prettier格式化工具):无需强制单引号则设为
false - ESLint相关规则(若启用ESLint):在
.eslintrc中关闭quotes规则,或配置为符合需求的格式
- Editor: Auto Closing Quotes:设为
也可针对特定代码行临时禁用格式化:
- 在目标代码行上方添加注释
// prettier-ignore(针对Prettier) - 或添加
/* eslint-disable quotes */临时禁用ESLint的引号规则
二、正确的字符串拼接方式
你原代码中的"是HTML实体,在JS/TS等代码中会被识别为普通字符串,而非双引号。以下是几种正确实现方式:
1. 转义双引号
在单引号包裹的字符串中直接用\"转义双引号:
lineData = lineData + 'track[' + row + '][' + col + ']=' + '"' + '"' + ';'; // 简化写法: lineData += 'track[' + row + '][' + col + ']=""';
2. 使用模板字符串(推荐)
ES6+模板字符串支持直接嵌入变量,且可自由使用单双引号,无需繁琐拼接:
lineData += `track[${row}][${col}]=""`;
这种方式不仅简洁,还能避免拼接错误,编辑器也不会乱改引号。
3. 双引号包裹并转义
若习惯用双引号包裹字符串,可转义内部双引号:
lineData = lineData + "track[" + row + "][" + col + "]=\"\"" + ";";
内容的提问来源于stack exchange,提问作者user1104028
相关产品推荐
相关产品推荐

