当我在Vue组件上执行格式化文档命令时。vue文件VSCode将所有单引号字符串替换为双引号字符串。

在我的具体情况下,该规则与要求单引号的electronic -vue lint配置冲突。

我没有安装更漂亮的扩展(没有更漂亮。singleQuote在我的设置)

如何定制VSCode来避免这种情况?


当前回答

试试这些解决方案中的一种

在vscode设置。Json文件添加此条目 ”漂亮。singleQuote”:真正的 在vscode中,如果您有.editorconfig文件,在根符号[*]quote_type = single下添加这一行 在vscode中,如果你有. pretierrc文件,添加这行

{
    "singleQuote": true,
    "vetur.format.defaultFormatterOptions": {
        "prettier": {
            "singleQuote": true
        }
    }
}

其他回答

对我来说唯一有效的方法是: 并且仅适用于Angular项目:

开始你的项目吧。”Editorconfig "文件,并粘贴'quote_type = single'。 希望这对你也有用。

看起来这个问题有一个漏洞:更漂亮的漏洞

以上方法对我都没用。 唯一有效的是,在package.json中添加这行代码:

"prettier": {
    "singleQuote": true
  },

对我有用的是设置。prettierrc。Json配置文件。把它放在你的项目的根,像这样的示例配置:

{
  "singleQuote": true,
  "trailingComma": "all",
  "tabWidth": 2,
  "semi": true,
  "arrowParens": "always"
}

触发Format Document命令后,一切都能正常工作。

旁注:这个解决方案的一个好处是,由于目前的配置文件,每个团队成员都获得了相同的格式化输出。

在我的情况下,问题是在转义\字符内的字符串:

message = 'Error argument is not an object, it\'s ' + typeof error

打开avoidEscape选项并对该字符串使用双引号解决了问题:

message = "Error argument is not an object, it's " + typeof error

.eslintrc.js

module.exports = {
  rules : {
    // Other rules...
    'quotes' : ['error', 'single', {'avoidEscape' : true}],
  }
}

你可以在settings.json中使用它

"javascript.preferences.quoteStyle": "single"